diff options
author | bunnei <bunneidev@gmail.com> | 2020-10-16 23:28:40 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-10-16 23:28:40 -0700 |
commit | 1eb908bc880a818b9fc77d8994f3f7221c4621fe (patch) | |
tree | 2c97b0aacdd36fb0c797cebdb7463314f9a01e40 | |
parent | cb708631b6d891633ad4079d7796249c19147e3f (diff) | |
parent | 363c644730198338140d9611b575ff22e14e1287 (diff) |
Merge pull request #4797 from bunnei/bcat-errors
service: bcat: Check client connection before interacting with socket.
-rw-r--r-- | src/core/hle/service/bcat/backend/boxcat.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/core/hle/service/bcat/backend/boxcat.cpp b/src/core/hle/service/bcat/backend/boxcat.cpp index 589e288df..3b6f7498e 100644 --- a/src/core/hle/service/bcat/backend/boxcat.cpp +++ b/src/core/hle/service/bcat/backend/boxcat.cpp @@ -454,6 +454,16 @@ Boxcat::StatusResult Boxcat::GetStatus(std::optional<std::string>& global, {std::string("Boxcat-Client-Type"), std::string(BOXCAT_CLIENT_TYPE)}, }; + if (!client.is_valid()) { + LOG_ERROR(Service_BCAT, "Client is invalid, going offline!"); + return StatusResult::Offline; + } + + if (!client.is_socket_open()) { + LOG_ERROR(Service_BCAT, "Failed to open socket, going offline!"); + return StatusResult::Offline; + } + const auto response = client.Get(BOXCAT_PATHNAME_EVENTS, headers); if (response == nullptr) return StatusResult::Offline; |