|
|
@@ -57,18 +57,13 @@ void SetupMainThread(Core::System& system, KProcess& owner_process, u32 priority
|
|
|
thread->GetContext64().cpu_registers[0] = 0;
|
|
|
thread->GetContext32().cpu_registers[1] = thread_handle;
|
|
|
thread->GetContext64().cpu_registers[1] = thread_handle;
|
|
|
- thread->DisableDispatch();
|
|
|
|
|
|
- auto& kernel = system.Kernel();
|
|
|
- // Threads by default are dormant, wake up the main thread so it runs when the scheduler fires
|
|
|
- {
|
|
|
- KScopedSchedulerLock lock{kernel};
|
|
|
- thread->SetState(ThreadState::Runnable);
|
|
|
-
|
|
|
- if (system.DebuggerEnabled()) {
|
|
|
- thread->RequestSuspend(SuspendType::Debug);
|
|
|
- }
|
|
|
+ if (system.DebuggerEnabled()) {
|
|
|
+ thread->RequestSuspend(SuspendType::Debug);
|
|
|
}
|
|
|
+
|
|
|
+ // Run our thread.
|
|
|
+ void(thread->Run());
|
|
|
}
|
|
|
} // Anonymous namespace
|
|
|
|