|
|
@ -409,7 +409,7 @@ static ResultCode GetProcessId32(Core::System& system, u32* out_process_id_low, |
|
|
|
|
|
|
|
|
/// Wait for the given handles to synchronize, timeout after the specified nanoseconds
|
|
|
/// Wait for the given handles to synchronize, timeout after the specified nanoseconds
|
|
|
static ResultCode WaitSynchronization(Core::System& system, s32* index, VAddr handles_address, |
|
|
static ResultCode WaitSynchronization(Core::System& system, s32* index, VAddr handles_address, |
|
|
u64 num_handles, s64 nano_seconds) { |
|
|
|
|
|
|
|
|
s32 num_handles, s64 nano_seconds) { |
|
|
LOG_TRACE(Kernel_SVC, "called handles_address=0x{:X}, num_handles={}, nano_seconds={}", |
|
|
LOG_TRACE(Kernel_SVC, "called handles_address=0x{:X}, num_handles={}, nano_seconds={}", |
|
|
handles_address, num_handles, nano_seconds); |
|
|
handles_address, num_handles, nano_seconds); |
|
|
|
|
|
|
|
|
@ -434,7 +434,7 @@ static ResultCode WaitSynchronization(Core::System& system, s32* index, VAddr ha |
|
|
|
|
|
|
|
|
// Ensure handles are closed when we're done.
|
|
|
// Ensure handles are closed when we're done.
|
|
|
SCOPE_EXIT({ |
|
|
SCOPE_EXIT({ |
|
|
for (u64 i = 0; i < num_handles; ++i) { |
|
|
|
|
|
|
|
|
for (s32 i = 0; i < num_handles; ++i) { |
|
|
kernel.UnregisterInUseObject(objs[i]); |
|
|
kernel.UnregisterInUseObject(objs[i]); |
|
|
objs[i]->Close(); |
|
|
objs[i]->Close(); |
|
|
} |
|
|
} |
|
|
|