diff --git a/extensions/clientprefs/cookie.cpp b/extensions/clientprefs/cookie.cpp index 7266ef1a..7ab605e0 100644 --- a/extensions/clientprefs/cookie.cpp +++ b/extensions/clientprefs/cookie.cpp @@ -159,7 +159,7 @@ void CookieManager::OnClientAuthorized(int client, const char *authstring) g_ClientPrefs.AttemptReconnection(); TQueryOp *op = new TQueryOp(Query_SelectData, player->GetSerial()); - UTIL_strncpy(op->m_params.steamId, authstring, MAX_NAME_LENGTH); + UTIL_strncpy(op->m_params.steamId, GetPlayerCompatAuthId(player), MAX_NAME_LENGTH); g_ClientPrefs.AddQueryToQueue(op); } @@ -181,7 +181,7 @@ void CookieManager::OnClientDisconnecting(int client) if (player) { - pAuth = player->GetAuthString(); + pAuth = GetPlayerCompatAuthId(player); g_ClientPrefs.ClearQueryCache(player->GetSerial()); } diff --git a/extensions/clientprefs/extension.cpp b/extensions/clientprefs/extension.cpp index a31f42e6..1c8665f7 100644 --- a/extensions/clientprefs/extension.cpp +++ b/extensions/clientprefs/extension.cpp @@ -349,6 +349,13 @@ void ClientPrefs::ProcessQueryCache() cachedQueries.clear(); } +const char *GetPlayerCompatAuthId(IGamePlayer *pPlayer) +{ + /* For legacy reasons, OnClientAuthorized gives the Steam2 id here if using Steam auth */ + const char *steamId = pPlayer->GetSteam2Id(); + return steamId ? steamId : pPlayer->GetAuthString(); +} + size_t IsAuthIdConnected(char *authID) { IGamePlayer *player; @@ -362,7 +369,7 @@ size_t IsAuthIdConnected(char *authID) continue; } - authString = player->GetAuthString(); + authString = GetPlayerCompatAuthId(player); if (authString == NULL || authString[0] == '\0') { @@ -394,9 +401,7 @@ void ClientPrefs::CatchLateLoadClients() continue; } - /* For legacy reasons, OnClientAuthorized gives the Steam2 id here if using Steam auth */ - const char *steamId = pPlayer->GetSteam2Id(); - g_CookieManager.OnClientAuthorized(i, steamId ? steamId : pPlayer->GetAuthString()); + g_CookieManager.OnClientAuthorized(i, GetPlayerCompatAuthId(pPlayer)); } } diff --git a/extensions/clientprefs/extension.h b/extensions/clientprefs/extension.h index 910cd783..6178b83c 100644 --- a/extensions/clientprefs/extension.h +++ b/extensions/clientprefs/extension.h @@ -181,6 +181,7 @@ public: } }; +const char *GetPlayerCompatAuthId(IGamePlayer *pPlayer); size_t IsAuthIdConnected(char *authID); extern sp_nativeinfo_t g_ClientPrefNatives[];