diff options
author | bunnei <bunneidev@gmail.com> | 2018-08-11 22:42:45 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-08-11 22:42:45 -0400 |
commit | a921d22545e5ae30dc5c5fe2db2285b57da586e5 (patch) | |
tree | 63ddc210f605401aca27d4b2e42305f28b59d948 /src/core/hle/kernel | |
parent | ee07041b3a6c45ae1ff9e02d24341f7819a4b004 (diff) | |
parent | 249341d08fa0548588a1268e6f00c3d2fc8e39ef (diff) |
Merge pull request #1022 from bunnei/fix-splat
Several Friend service fixes
Diffstat (limited to 'src/core/hle/kernel')
-rw-r--r-- | src/core/hle/kernel/server_session.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/core/hle/kernel/server_session.cpp b/src/core/hle/kernel/server_session.cpp index 93560152f..d09ca5992 100644 --- a/src/core/hle/kernel/server_session.cpp +++ b/src/core/hle/kernel/server_session.cpp @@ -71,6 +71,14 @@ ResultCode ServerSession::HandleDomainSyncRequest(Kernel::HLERequestContext& con const u32 object_id{context.GetDomainMessageHeader()->object_id}; switch (domain_message_header->command) { case IPC::DomainMessageHeader::CommandType::SendMessage: + if (object_id > domain_request_handlers.size()) { + LOG_CRITICAL(IPC, + "object_id {} is too big! This probably means a recent service call " + "to {} needed to return a new interface!", + object_id, name); + UNREACHABLE(); + return RESULT_SUCCESS; // Ignore error if asserts are off + } return domain_request_handlers[object_id - 1]->HandleSyncRequest(context); case IPC::DomainMessageHeader::CommandType::CloseVirtualHandle: { |