diff options
Diffstat (limited to 'src/core/hle/kernel/thread.cpp')
| -rw-r--r-- | src/core/hle/kernel/thread.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/core/hle/kernel/thread.cpp b/src/core/hle/kernel/thread.cpp index c5cee12dd..202997d20 100644 --- a/src/core/hle/kernel/thread.cpp +++ b/src/core/hle/kernel/thread.cpp | |||
| @@ -303,7 +303,9 @@ void Thread::RemoveMutexWaiter(SharedPtr<Thread> thread) { | |||
| 303 | } | 303 | } |
| 304 | 304 | ||
| 305 | void Thread::UpdatePriority() { | 305 | void Thread::UpdatePriority() { |
| 306 | // Find the highest priority among all the threads that are waiting for this thread's lock | 306 | // If any of the threads waiting on the mutex have a higher priority |
| 307 | // (taking into account priority inheritance), then this thread inherits | ||
| 308 | // that thread's priority. | ||
| 307 | u32 new_priority = nominal_priority; | 309 | u32 new_priority = nominal_priority; |
| 308 | if (!wait_mutex_threads.empty()) { | 310 | if (!wait_mutex_threads.empty()) { |
| 309 | if (wait_mutex_threads.front()->current_priority < new_priority) { | 311 | if (wait_mutex_threads.front()->current_priority < new_priority) { |