server_session: Fix scenario where all domain handlers are closed.

This commit is contained in:
bunnei 2018-01-23 22:00:17 -05:00
parent 1b1d399e5f
commit 7588b24f46

View File

@ -89,9 +89,9 @@ ResultCode ServerSession::HandleSyncRequest(SharedPtr<Thread> thread) {
} }
LOG_CRITICAL(IPC, "Unknown domain command=%d", domain_message_header->command.Value()); LOG_CRITICAL(IPC, "Unknown domain command=%d", domain_message_header->command.Value());
UNIMPLEMENTED(); ASSERT(false);
} }
return domain_request_handlers.front()->HandleSyncRequest(context); // If there is no domain header, the regular session handler is used
} }
// If this ServerSession has an associated HLE handler, forward the request to it. // If this ServerSession has an associated HLE handler, forward the request to it.
@ -117,7 +117,7 @@ ResultCode ServerSession::HandleSyncRequest(SharedPtr<Thread> thread) {
// end of the command such that only commands following this one are handled as domains // end of the command such that only commands following this one are handled as domains
if (convert_to_domain) { if (convert_to_domain) {
ASSERT_MSG(domain_request_handlers.empty(), "already a domain"); ASSERT_MSG(domain_request_handlers.empty(), "already a domain");
domain_request_handlers.push_back(std::move(hle_handler)); domain_request_handlers = {hle_handler};
convert_to_domain = false; convert_to_domain = false;
} }