summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFeng Chen <vonchenplus@gmail.com>2021-09-25 16:16:21 +0200
committerFeng Chen <vonchenplus@gmail.com>2021-09-25 16:16:21 +0200
commit7cd43b139a935ed0b7bc34a31620c3ffb70c7e48 (patch)
treeb461fe51dff478144c34920cd12307987fdb8eb8
parentMerge pull request #7043 from astrelsky/cmake (diff)
downloadyuzu-7cd43b139a935ed0b7bc34a31620c3ffb70c7e48.tar
yuzu-7cd43b139a935ed0b7bc34a31620c3ffb70c7e48.tar.gz
yuzu-7cd43b139a935ed0b7bc34a31620c3ffb70c7e48.tar.bz2
yuzu-7cd43b139a935ed0b7bc34a31620c3ffb70c7e48.tar.lz
yuzu-7cd43b139a935ed0b7bc34a31620c3ffb70c7e48.tar.xz
yuzu-7cd43b139a935ed0b7bc34a31620c3ffb70c7e48.tar.zst
yuzu-7cd43b139a935ed0b7bc34a31620c3ffb70c7e48.zip
-rw-r--r--src/core/hle/kernel/svc.cpp14
1 files changed, 8 insertions, 6 deletions
diff --git a/src/core/hle/kernel/svc.cpp b/src/core/hle/kernel/svc.cpp
index 62fb06c45..f98f24a60 100644
--- a/src/core/hle/kernel/svc.cpp
+++ b/src/core/hle/kernel/svc.cpp
@@ -320,17 +320,19 @@ static ResultCode SendSyncRequest(Core::System& system, Handle handle) {
auto& kernel = system.Kernel();
- KScopedAutoObject session =
- kernel.CurrentProcess()->GetHandleTable().GetObject<KClientSession>(handle);
- R_UNLESS(session.IsNotNull(), ResultInvalidHandle);
- LOG_TRACE(Kernel_SVC, "called handle=0x{:08X}({})", handle, session->GetName());
-
auto thread = kernel.CurrentScheduler()->GetCurrentThread();
{
KScopedSchedulerLock lock(kernel);
thread->SetState(ThreadState::Waiting);
thread->SetWaitReasonForDebugging(ThreadWaitReasonForDebugging::IPC);
- session->SendSyncRequest(thread, system.Memory(), system.CoreTiming());
+
+ {
+ KScopedAutoObject session =
+ kernel.CurrentProcess()->GetHandleTable().GetObject<KClientSession>(handle);
+ R_UNLESS(session.IsNotNull(), ResultInvalidHandle);
+ LOG_TRACE(Kernel_SVC, "called handle=0x{:08X}({})", handle, session->GetName());
+ session->SendSyncRequest(thread, system.Memory(), system.CoreTiming());
+ }
}
KSynchronizationObject* dummy{};