@ -1250,14 +1250,13 @@ static ResultCode CreateThread(Core::System& system, Handle* out_handle, VAddr e
Thread : : Create ( kernel , name , entry_point , priority , arg , processor_id , stack_top ,
Thread : : Create ( kernel , name , entry_point , priority , arg , processor_id , stack_top ,
* current_process ) ) ;
* current_process ) ) ;
const auto new_ guest _handle = current_process - > GetHandleTable ( ) . Create ( thread ) ;
const auto new_ thread _handle = current_process - > GetHandleTable ( ) . Create ( thread ) ;
if ( new_ guest _handle. Failed ( ) ) {
if ( new_ thread _handle. Failed ( ) ) {
LOG_ERROR ( Kernel_SVC , " Failed to create handle with error=0x{:X} " ,
LOG_ERROR ( Kernel_SVC , " Failed to create handle with error=0x{:X} " ,
new_ guest _handle. Code ( ) . raw ) ;
new_ thread _handle. Code ( ) . raw ) ;
return new_ guest _handle. Code ( ) ;
return new_ thread _handle. Code ( ) ;
}
}
thread - > SetGuestHandle ( * new_guest_handle ) ;
* out_handle = * new_thread_handle ;
* out_handle = * new_guest_handle ;
system . CpuCore ( thread - > GetProcessorID ( ) ) . PrepareReschedule ( ) ;
system . CpuCore ( thread - > GetProcessorID ( ) ) . PrepareReschedule ( ) ;