Skip to content

Commit 6c13abf

Browse files
authored
fix null reference exception when shutting down a host (#199)
with netcode for gameobjects 1.2.0, DisconnectLocalClient can get called without setting up serverUser when starting a host
1 parent f6720b5 commit 6c13abf

File tree

1 file changed

+7
-5
lines changed

1 file changed

+7
-5
lines changed

Transports/com.community.netcode.transport.steamnetworkingsockets/Runtime/SteamNetworkingSocketsTransport.cs

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -60,14 +60,16 @@ public override void DisconnectLocalClient()
6060
{
6161
if (NetworkManager.Singleton.LogLevel <= LogLevel.Developer) NetworkLog.LogInfoServer(nameof(SteamNetworkingSocketsTransport) + " - DisconnectLocalClient");
6262

63-
if (connectionMapping.ContainsKey(serverUser.id.m_SteamID))
64-
connectionMapping.Remove(serverUser.id.m_SteamID);
63+
if (serverUser != null) {
64+
if (connectionMapping.ContainsKey(serverUser.id.m_SteamID))
65+
connectionMapping.Remove(serverUser.id.m_SteamID);
6566
#if UNITY_SERVER
66-
SteamGameServerNetworkingSockets.CloseConnection(serverUser.connection, 0, "Disconnected", false);
67+
SteamGameServerNetworkingSockets.CloseConnection(serverUser.connection, 0, "Disconnected", false);
6768
#else
68-
SteamNetworkingSockets.CloseConnection(serverUser.connection, 0, "Disconnected", false);
69+
SteamNetworkingSockets.CloseConnection(serverUser.connection, 0, "Disconnected", false);
6970
#endif
70-
serverUser = null;
71+
serverUser = null;
72+
}
7173
}
7274

7375
public override void DisconnectRemoteClient(ulong clientId)

0 commit comments

Comments
 (0)