aboutsummaryrefslogtreecommitdiff
path: root/src/core/hle/service/hle_ipc.cpp
diff options
context:
space:
mode:
authorLiam <byteslice@airmail.cc>2024-02-07 15:06:15 -0500
committerLiam <byteslice@airmail.cc>2024-02-07 15:06:15 -0500
commitfee263c59c2eaf987f750768548f1cc6aa491d3c (patch)
treea52053ea84facff57155fa08e078082bde15a446 /src/core/hle/service/hle_ipc.cpp
parentc10e720ba9cb979577b3af53adb1347f13ec4ad5 (diff)
ipc: additional fixes
Diffstat (limited to 'src/core/hle/service/hle_ipc.cpp')
-rw-r--r--src/core/hle/service/hle_ipc.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/core/hle/service/hle_ipc.cpp b/src/core/hle/service/hle_ipc.cpp
index 50e1ed756..e0367e774 100644
--- a/src/core/hle/service/hle_ipc.cpp
+++ b/src/core/hle/service/hle_ipc.cpp
@@ -299,8 +299,12 @@ Result HLERequestContext::WriteToOutgoingCommandBuffer() {
if (GetManager()->IsDomain()) {
current_offset = domain_offset - static_cast<u32>(outgoing_domain_objects.size());
for (auto& object : outgoing_domain_objects) {
- GetManager()->AppendDomainHandler(std::move(object));
- cmd_buf[current_offset++] = static_cast<u32_le>(GetManager()->DomainHandlerCount());
+ if (object) {
+ GetManager()->AppendDomainHandler(std::move(object));
+ cmd_buf[current_offset++] = static_cast<u32_le>(GetManager()->DomainHandlerCount());
+ } else {
+ cmd_buf[current_offset++] = 0;
+ }
}
}