summaryrefslogtreecommitdiff
path: root/src/core/hle/svc.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/hle/svc.cpp')
-rw-r--r--src/core/hle/svc.cpp11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/core/hle/svc.cpp b/src/core/hle/svc.cpp
index 6f72a6eb7..e566036e5 100644
--- a/src/core/hle/svc.cpp
+++ b/src/core/hle/svc.cpp
@@ -92,11 +92,18 @@ Result ConnectToPort(void* out, const char* port_name) {
92 92
93/// Synchronize to an OS service 93/// Synchronize to an OS service
94Result SendSyncRequest(Handle handle) { 94Result SendSyncRequest(Handle handle) {
95 bool wait = false;
95 Kernel::Object* object = Kernel::g_object_pool.GetFast<Kernel::Object>(handle); 96 Kernel::Object* object = Kernel::g_object_pool.GetFast<Kernel::Object>(handle);
97
96 DEBUG_LOG(SVC, "SendSyncRequest called handle=0x%08X"); 98 DEBUG_LOG(SVC, "SendSyncRequest called handle=0x%08X");
97 _assert_msg_(KERNEL, object, "SendSyncRequest called, but kernel object is NULL!"); 99 _assert_msg_(KERNEL, object, "SendSyncRequest called, but kernel object is NULL!");
98 object->SyncRequest(); 100
99 return 0; 101 Result res = object->SyncRequest(&wait);
102 if (wait) {
103 Kernel::WaitCurrentThread(WAITTYPE_SYNCH); // TODO(bunnei): Is this correct?
104 }
105
106 return res;
100} 107}
101 108
102/// Close a handle 109/// Close a handle