diff options
Diffstat (limited to 'src/core/hle')
| -rw-r--r-- | src/core/hle/ipc_helpers.h | 8 | 
1 files changed, 6 insertions, 2 deletions
diff --git a/src/core/hle/ipc_helpers.h b/src/core/hle/ipc_helpers.h index 61bda3786..ceff2532d 100644 --- a/src/core/hle/ipc_helpers.h +++ b/src/core/hle/ipc_helpers.h @@ -345,8 +345,12 @@ public:      explicit RequestParser(u32* command_buffer) : RequestHelperBase(command_buffer) {}      explicit RequestParser(Kernel::HLERequestContext& ctx) : RequestHelperBase(ctx) { -        ASSERT_MSG(ctx.GetDataPayloadOffset(), "context is incomplete"); -        Skip(ctx.GetDataPayloadOffset(), false); +        // TIPC does not have data payload offset +        if (!ctx.IsTipc()) { +            ASSERT_MSG(ctx.GetDataPayloadOffset(), "context is incomplete"); +            Skip(ctx.GetDataPayloadOffset(), false); +        } +          // Skip the u64 command id, it's already stored in the context          static constexpr u32 CommandIdSize = 2;          Skip(CommandIdSize, false);  | 
