fix: Tidy up socket dispose. (#1334)

This commit is contained in:
Kamron Batman 2023-02-07 21:22:04 -08:00 • committed by GitHub
parent 14ef1ab7e5
commit 44c69620a6
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 46 additions and 48 deletions

View file

@ -5,5 +5,9 @@ namespace Server.Network;
public static class OutgoingPackets
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static bool CannotSendPackets(this NetState ns) => ns?.Connection == null || ns.BlockAllPackets;
public static bool CannotSendPackets(this NetState ns) =>
// Do not check for NetState.Running. Packets are sent to a "disconnected" socket as part of the OnDisconnect events
// up until the Connection is nulled. Closing the connection is done synchronously, therefore packets will not be sent
// once the Mobile.NetState is null.
ns?.Connection == null || ns.BlockAllPackets;
}