diff --git a/src/NetworkSyncManager.cpp b/src/NetworkSyncManager.cpp index 12ae1db42b..2c5afca4a5 100644 --- a/src/NetworkSyncManager.cpp +++ b/src/NetworkSyncManager.cpp @@ -944,13 +944,17 @@ ETTProtocol::Update(NetworkSyncManager* n, float fDeltaTime) } break; case ettps_lobbyuserlistupdate: { auto& vec = NSMAN->lobbyuserlist; - auto newUsers = payload->at("on"); - for (auto& user : newUsers) { - NSMAN->lobbyuserlist.insert(user.get()); + if (payload->find("on") != payload->end()) { + auto newUsers = payload->at("on"); + for (auto& user : newUsers) { + NSMAN->lobbyuserlist.insert(user.get()); + } } - auto removedUsers = payload->at("off"); - for (auto& user : removedUsers) { - NSMAN->lobbyuserlist.erase(user.get()); + if (payload->find("off") != payload->end()) { + auto removedUsers = payload->at("off"); + for (auto& user : removedUsers) { + NSMAN->lobbyuserlist.erase(user.get()); + } } SCREENMAN->SendMessageToTopScreen(SM_UsersUpdate); } break;