From ad6ff0b4e898c41c4edceee38b2eed7622b266f7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rados=C5=82aw=20Serba?= Date: Wed, 23 Jul 2025 07:28:19 +0000 Subject: [PATCH 1/3] Fix SteamUser023 issue --- dll/steam_client_interface_getter.cpp | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/dll/steam_client_interface_getter.cpp b/dll/steam_client_interface_getter.cpp index 68c209a4..49b82bdd 100644 --- a/dll/steam_client_interface_getter.cpp +++ b/dll/steam_client_interface_getter.cpp @@ -96,7 +96,20 @@ ISteamGameStats *Steam_Client::GetISteamGameStats( HSteamUser hSteamUser, HSteam ISteamUser *Steam_Client::GetISteamUser( HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion ) { PRINT_DEBUG("%s", pchVersion); - if (!steam_pipes.count(hSteamPipe) || !hSteamUser) return NULL; + + if (!steam_pipes.count(hSteamPipe)) { + // Fallback for steamclient_experimental build: if pipe 1 is requested but not found, + // and we have other valid pipes, continue execution instead of returning NULL + if (hSteamPipe == 1 && !steam_pipes.empty()) { + // Continue with function execution using available pipes + } else { + return NULL; + } + } + + if (!hSteamUser) { + return NULL; + } if (strcmp(pchVersion, "SteamUser004") == 0) { return reinterpret_cast(static_cast(steam_user)); // sdk 0.99u From 77ff74d6e1c5ed247a94ca05e6005e343c24702c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rados=C5=82aw=20Serba?= Date: Wed, 23 Jul 2025 13:29:16 +0000 Subject: [PATCH 2/3] apply changes suggested by Detanup01 in a PR --- dll/steam_client_interface_getter.cpp | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/dll/steam_client_interface_getter.cpp b/dll/steam_client_interface_getter.cpp index 49b82bdd..de550f00 100644 --- a/dll/steam_client_interface_getter.cpp +++ b/dll/steam_client_interface_getter.cpp @@ -97,19 +97,17 @@ ISteamUser *Steam_Client::GetISteamUser( HSteamUser hSteamUser, HSteamPipe hStea { PRINT_DEBUG("%s", pchVersion); + if (!hSteamUser) { + return NULL; + } if (!steam_pipes.count(hSteamPipe)) { // Fallback for steamclient_experimental build: if pipe 1 is requested but not found, // and we have other valid pipes, continue execution instead of returning NULL - if (hSteamPipe == 1 && !steam_pipes.empty()) { - // Continue with function execution using available pipes - } else { + if (hSteamPipe == 1 || !steam_pipes.empty()) { return NULL; } } - if (!hSteamUser) { - return NULL; - } if (strcmp(pchVersion, "SteamUser004") == 0) { return reinterpret_cast(static_cast(steam_user)); // sdk 0.99u From ace78b0247b085a925f2f2c007d6d1307204e11d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rados=C5=82aw=20Serba?= Date: Wed, 23 Jul 2025 14:51:14 +0000 Subject: [PATCH 3/3] Update steam_client_interface_getter.cpp typo --- dll/steam_client_interface_getter.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dll/steam_client_interface_getter.cpp b/dll/steam_client_interface_getter.cpp index de550f00..b76d4240 100644 --- a/dll/steam_client_interface_getter.cpp +++ b/dll/steam_client_interface_getter.cpp @@ -103,7 +103,7 @@ ISteamUser *Steam_Client::GetISteamUser( HSteamUser hSteamUser, HSteamPipe hStea if (!steam_pipes.count(hSteamPipe)) { // Fallback for steamclient_experimental build: if pipe 1 is requested but not found, // and we have other valid pipes, continue execution instead of returning NULL - if (hSteamPipe == 1 || !steam_pipes.empty()) { + if (hSteamPipe !=1 || steam_pipes.empty()) { return NULL; } }