Skip to content

Commit

Permalink
fix: Edgegap Lobby Error continues to Connecting (#3898)
Browse files Browse the repository at this point in the history
Missing return, oops.
Also some minor readability cleanup
  • Loading branch information
imerr committed Sep 18, 2024
1 parent 1cc18e6 commit 2d9ee56
Showing 1 changed file with 44 additions and 41 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -206,63 +206,66 @@ private IEnumerator WaitForLobbyRelay(string lobbyId, bool forServer)
Api.GetLobby(lobbyId, lobby =>
{
waitingForResponse = false;
if (!string.IsNullOrEmpty(lobby.assignment.ip))
if (string.IsNullOrEmpty(lobby.assignment.ip))
{
relayAddress = lobby.assignment.ip;
foreach (Lobby.Port aport in lobby.assignment.ports)
// no lobby deployed yet, have the outer loop retry
return;
}
relayAddress = lobby.assignment.ip;
foreach (Lobby.Port aport in lobby.assignment.ports)
{
if (aport.protocol == "UDP")
{
if (aport.protocol == "UDP")
if (aport.name == "server")
{
if (aport.name == "server")
{
relayGameServerPort = (ushort)aport.port;
relayGameServerPort = (ushort)aport.port;
}
else if (aport.name == "client")
{
relayGameClientPort = (ushort)aport.port;
}
}
}
bool found = false;
foreach (Lobby.Player player in lobby.players)
{
if (player.id == _playerId)
else if (aport.name == "client")
{
userId = player.authorization_token;
sessionId = lobby.assignment.authorization_token;
found = true;
break;
relayGameClientPort = (ushort)aport.port;
}
}
running = false;
if (!found)
}
bool found = false;
foreach (Lobby.Player player in lobby.players)
{
if (player.id == _playerId)
{
string errorMsg = $"Couldn't find my player ({_playerId})";
Debug.LogError(errorMsg);
if (forServer)
{
_status = TransportStatus.Error;
OnServerError?.Invoke(0, TransportError.Unexpected, errorMsg);
ServerStop();
}
else
{
_status = TransportStatus.Error;
OnClientError?.Invoke(TransportError.Unexpected, errorMsg);
ClientDisconnect();
}
userId = player.authorization_token;
sessionId = lobby.assignment.authorization_token;
found = true;
break;
}
_status = TransportStatus.Connecting;
}
running = false;
if (!found)
{
string errorMsg = $"Couldn't find my player ({_playerId})";
Debug.LogError(errorMsg);
if (forServer)
{
base.ServerStart();
_status = TransportStatus.Error;
OnServerError?.Invoke(0, TransportError.Unexpected, errorMsg);
ServerStop();
}
else
{
base.ClientConnect("");
_status = TransportStatus.Error;
OnClientError?.Invoke(TransportError.Unexpected, errorMsg);
ClientDisconnect();
}
return;
}
_status = TransportStatus.Connecting;
if (forServer)
{
base.ServerStart();
}
else
{
base.ClientConnect("");
}
}, error =>
{
Expand Down

0 comments on commit 2d9ee56

Please sign in to comment.