2
1
Fork 0
mirror of https://github.com/yuzu-emu/yuzu.git synced 2024-07-04 23:31:19 +01:00

Merge pull request #2338 from wwylele/fix-dead

Kernel: remove object's waiting thread if it is dead
This commit is contained in:
Sebastian Valle 2016-12-16 08:48:22 -05:00 committed by GitHub
commit d25a37966d

View file

@ -35,7 +35,8 @@ void WaitObject::RemoveWaitingThread(Thread* thread) {
SharedPtr<Thread> WaitObject::GetHighestPriorityReadyThread() { SharedPtr<Thread> WaitObject::GetHighestPriorityReadyThread() {
// Remove the threads that are ready or already running from our waitlist // Remove the threads that are ready or already running from our waitlist
boost::range::remove_erase_if(waiting_threads, [](const SharedPtr<Thread>& thread) { boost::range::remove_erase_if(waiting_threads, [](const SharedPtr<Thread>& thread) {
return thread->status == THREADSTATUS_RUNNING || thread->status == THREADSTATUS_READY; return thread->status == THREADSTATUS_RUNNING || thread->status == THREADSTATUS_READY ||
thread->status == THREADSTATUS_DEAD;
}); });
// TODO(Subv): This call should be performed inside the loop below to check if an object can be // TODO(Subv): This call should be performed inside the loop below to check if an object can be