diff --git a/src/client/component/steam_proxy.cpp b/src/client/component/steam_proxy.cpp index dcef9d12..117cab4f 100644 --- a/src/client/component/steam_proxy.cpp +++ b/src/client/component/steam_proxy.cpp @@ -35,6 +35,11 @@ namespace steam_proxy { return; } + + if (!FindWindowA(0, "Steam")) + { + return; + } this->load_client(); this->clean_up_on_error(); @@ -152,29 +157,29 @@ namespace steam_proxy void clean_up_on_error() { scheduler::schedule([this]() + { + if (this->steam_client_module_ + && this->steam_pipe_ + && this->global_user_ + && this->steam_client_module_.invoke("Steam_BConnected", this->global_user_, + this->steam_pipe_) + && this->steam_client_module_.invoke("Steam_BLoggedOn", this->global_user_, this->steam_pipe_) + ) { - if (this->steam_client_module_ - && this->steam_pipe_ - && this->global_user_ - && this->steam_client_module_.invoke("Steam_BConnected", this->global_user_, - this->steam_pipe_) - && this->steam_client_module_.invoke("Steam_BLoggedOn", this->global_user_, this->steam_pipe_) - ) - { - return scheduler::cond_continue; - } + return scheduler::cond_continue; + } - this->client_engine_ = nullptr; - this->client_user_ = nullptr; - this->client_utils_ = nullptr; + this->client_engine_ = nullptr; + this->client_user_ = nullptr; + this->client_utils_ = nullptr; - this->steam_pipe_ = nullptr; - this->global_user_ = nullptr; + this->steam_pipe_ = nullptr; + this->global_user_ = nullptr; - this->steam_client_module_ = utils::nt::library{nullptr}; + this->steam_client_module_ = utils::nt::library{nullptr}; - return scheduler::cond_end; - }); + return scheduler::cond_end; + }); } };