diff options
| author | 2021-06-24 18:39:43 -0700 | |
|---|---|---|
| committer | 2021-06-24 18:39:43 -0700 | |
| commit | 982be246abcc2e672442397ca2a256c12aacc2b0 (patch) | |
| tree | 16f47895267673e5d5527e48c598ee083ce4f73e /src | |
| parent | hle: service: hwopus: Implement GetWorkBufferSizeEx and OpenHardwareOpusDecod... (diff) | |
| download | yuzu-982be246abcc2e672442397ca2a256c12aacc2b0.tar.gz yuzu-982be246abcc2e672442397ca2a256c12aacc2b0.tar.xz yuzu-982be246abcc2e672442397ca2a256c12aacc2b0.zip | |
hle: hle_helpers: Skip data payload offset checks on TIPC requests.
- TIPC does not use this.
Diffstat (limited to 'src')
| -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: | |||
| 345 | explicit RequestParser(u32* command_buffer) : RequestHelperBase(command_buffer) {} | 345 | explicit RequestParser(u32* command_buffer) : RequestHelperBase(command_buffer) {} |
| 346 | 346 | ||
| 347 | explicit RequestParser(Kernel::HLERequestContext& ctx) : RequestHelperBase(ctx) { | 347 | explicit RequestParser(Kernel::HLERequestContext& ctx) : RequestHelperBase(ctx) { |
| 348 | ASSERT_MSG(ctx.GetDataPayloadOffset(), "context is incomplete"); | 348 | // TIPC does not have data payload offset |
| 349 | Skip(ctx.GetDataPayloadOffset(), false); | 349 | if (!ctx.IsTipc()) { |
| 350 | ASSERT_MSG(ctx.GetDataPayloadOffset(), "context is incomplete"); | ||
| 351 | Skip(ctx.GetDataPayloadOffset(), false); | ||
| 352 | } | ||
| 353 | |||
| 350 | // Skip the u64 command id, it's already stored in the context | 354 | // Skip the u64 command id, it's already stored in the context |
| 351 | static constexpr u32 CommandIdSize = 2; | 355 | static constexpr u32 CommandIdSize = 2; |
| 352 | Skip(CommandIdSize, false); | 356 | Skip(CommandIdSize, false); |