From 0e0df256c5763993aea53c3113b8c6cb414f3a9b Mon Sep 17 00:00:00 2001 From: a Date: Fri, 6 Dec 2024 23:06:48 +0200 Subject: [PATCH] respect logon setting in client function `Steam_BLoggedOn()` --- dll/dll.cpp | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/dll/dll.cpp b/dll/dll.cpp index 424716e3..a57cf0b9 100644 --- a/dll/dll.cpp +++ b/dll/dll.cpp @@ -1383,8 +1383,24 @@ STEAMCLIENT_API steam_bool Steam_BConnected( HSteamUser hUser, HSteamPipe hSteam STEAMCLIENT_API steam_bool Steam_BLoggedOn( HSteamUser hUser, HSteamPipe hSteamPipe ) { - PRINT_DEBUG_ENTRY(); - return true; + PRINT_DEBUG("%i %i", hUser, hSteamPipe); + Steam_Client *steam_client = get_steam_client(); + + auto pipe_it = steam_client->steam_pipes.find(hSteamPipe); + if (steam_client->steam_pipes.end() == pipe_it) { + return false; + } + + class Settings *settings_tmp{}; + if (pipe_it->second == Steam_Pipe::SERVER) { + settings_tmp = steam_client->settings_server; + } else if (pipe_it->second == Steam_Pipe::CLIENT) { + settings_tmp = steam_client->settings_client; + } else { + return false; + } + + return !settings_tmp->is_offline(); } STEAMCLIENT_API steam_bool Steam_BReleaseSteamPipe( HSteamPipe hSteamPipe )