diff options
author | BobTheBob <32057864+BobTheBob9@users.noreply.github.com> | 2021-10-17 23:46:12 +0100 |
---|---|---|
committer | BobTheBob <32057864+BobTheBob9@users.noreply.github.com> | 2021-10-17 23:46:12 +0100 |
commit | 9b8a6d155a7a2cf1bfb4e8d98980bfb0b6e94d92 (patch) | |
tree | fd54aa3919c716b7a96ff5c9de10401daade4388 /NorthstarDedicatedTest | |
parent | c5cf48bba33159fc268904688f29ed20c14b11b3 (diff) | |
download | NorthstarLauncher-9b8a6d155a7a2cf1bfb4e8d98980bfb0b6e94d92.tar.gz NorthstarLauncher-9b8a6d155a7a2cf1bfb4e8d98980bfb0b6e94d92.zip |
fix a crashing GetCurrentPlaylistVar call, fix mod sorting
Diffstat (limited to 'NorthstarDedicatedTest')
-rw-r--r-- | NorthstarDedicatedTest/masterserver.cpp | 7 | ||||
-rw-r--r-- | NorthstarDedicatedTest/modmanager.cpp | 2 |
2 files changed, 7 insertions, 2 deletions
diff --git a/NorthstarDedicatedTest/masterserver.cpp b/NorthstarDedicatedTest/masterserver.cpp index 36b360a1..4597213c 100644 --- a/NorthstarDedicatedTest/masterserver.cpp +++ b/NorthstarDedicatedTest/masterserver.cpp @@ -561,7 +561,12 @@ void CHostState__State_NewGameHook(CHostState* hostState) Cbuf_AddText(Cbuf_GetCurrentPlayer(), "exec autoexec_ns_server", cmd_source_t::kCommandSrcCode); Cbuf_Execute(); - g_MasterServerManager->AddSelfToServerList(Cvar_hostport->m_nValue, Cvar_ns_player_auth_port->m_nValue, Cvar_ns_server_name->m_pszString, Cvar_ns_server_desc->m_pszString, hostState->m_levelName, (char*)GetCurrentPlaylistName(), std::stoi(GetCurrentPlaylistVar("max_players", true)), Cvar_ns_server_password->m_pszString); + int maxPlayers = 6; + char* maxPlayersVar = GetCurrentPlaylistVar("max_players", true); + if (maxPlayersVar) // GetCurrentPlaylistVar can return null so protect against this + std::stoi(maxPlayersVar); + + g_MasterServerManager->AddSelfToServerList(Cvar_hostport->m_nValue, Cvar_ns_player_auth_port->m_nValue, Cvar_ns_server_name->m_pszString, Cvar_ns_server_desc->m_pszString, hostState->m_levelName, (char*)GetCurrentPlaylistName(), maxPlayers, Cvar_ns_server_password->m_pszString); g_ServerAuthenticationManager->StartPlayerAuthServer(); CHostState__State_NewGame(hostState); diff --git a/NorthstarDedicatedTest/modmanager.cpp b/NorthstarDedicatedTest/modmanager.cpp index 42ad0545..956ea90f 100644 --- a/NorthstarDedicatedTest/modmanager.cpp +++ b/NorthstarDedicatedTest/modmanager.cpp @@ -261,7 +261,7 @@ void ModManager::LoadMods() // sort by load prio, lowest-highest std::sort(m_loadedMods.begin(), m_loadedMods.end(), [](Mod* a, Mod* b) { - return a->LoadPriority > b->LoadPriority; + return a->LoadPriority < b->LoadPriority; }); for (Mod* mod : m_loadedMods) |