Browse Source

hle: kernel: k_server_session: Ensure service thread is valid before dereference.

pull/15/merge
bunnei 5 years ago
parent
commit
93f93cb8bc
  1. 4
      src/core/hle/kernel/k_server_session.cpp

4
src/core/hle/kernel/k_server_session.cpp

@ -119,9 +119,11 @@ ResultCode KServerSession::QueueSyncRequest(KThread* thread, Core::Memory::Memor
context->PopulateFromIncomingCommandBuffer(kernel.CurrentProcess()->GetHandleTable(), cmd_buf); context->PopulateFromIncomingCommandBuffer(kernel.CurrentProcess()->GetHandleTable(), cmd_buf);
if (auto strong_ptr = manager->GetServiceThread().lock()) {
if (auto strong_ptr = manager->GetServiceThread().lock(); strong_ptr) {
strong_ptr->QueueSyncRequest(*parent, std::move(context)); strong_ptr->QueueSyncRequest(*parent, std::move(context));
return ResultSuccess; return ResultSuccess;
} else {
ASSERT(false, "strong_ptr was nullptr!");
} }
return ResultSuccess; return ResultSuccess;

Loading…
Cancel
Save