aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorbunnei <bunneidev@gmail.com>2020-10-16 23:28:40 -0700
committerGitHub <noreply@github.com>2020-10-16 23:28:40 -0700
commitcf9baa19df7a265a67c8f7f554d1097556be0303 (patch)
tree2c97b0aacdd36fb0c797cebdb7463314f9a01e40 /src
parent165b5dfff143a58a643f78ccf1146eb55844af0c (diff)
parentbf6d4d305281de9411c349e0b4d894fca3c8af6d (diff)
Merge pull request #4797 from bunnei/bcat-errors
service: bcat: Check client connection before interacting with socket.
Diffstat (limited to 'src')
-rw-r--r--src/core/hle/service/bcat/backend/boxcat.cpp10
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 589e288dfa..3b6f7498e8 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;