diff options
Diffstat (limited to 'src/core/hle/kernel/mutex.cpp')
| -rw-r--r-- | src/core/hle/kernel/mutex.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/core/hle/kernel/mutex.cpp b/src/core/hle/kernel/mutex.cpp index 08462376d..558068c79 100644 --- a/src/core/hle/kernel/mutex.cpp +++ b/src/core/hle/kernel/mutex.cpp | |||
| @@ -87,7 +87,7 @@ void ReleaseThreadMutexes(Handle thread) { | |||
| 87 | 87 | ||
| 88 | // Release every mutex that the thread holds, and resume execution on the waiting threads | 88 | // Release every mutex that the thread holds, and resume execution on the waiting threads |
| 89 | for (MutexMap::iterator iter = locked.first; iter != locked.second; ++iter) { | 89 | for (MutexMap::iterator iter = locked.first; iter != locked.second; ++iter) { |
| 90 | Mutex* mutex = g_handle_table.GetFast<Mutex>(iter->second); | 90 | Mutex* mutex = g_handle_table.Get<Mutex>(iter->second); |
| 91 | ResumeWaitingThread(mutex); | 91 | ResumeWaitingThread(mutex); |
| 92 | } | 92 | } |
| 93 | 93 | ||
| @@ -136,7 +136,8 @@ ResultCode ReleaseMutex(Handle handle) { | |||
| 136 | */ | 136 | */ |
| 137 | Mutex* CreateMutex(Handle& handle, bool initial_locked, const std::string& name) { | 137 | Mutex* CreateMutex(Handle& handle, bool initial_locked, const std::string& name) { |
| 138 | Mutex* mutex = new Mutex; | 138 | Mutex* mutex = new Mutex; |
| 139 | handle = Kernel::g_handle_table.Create(mutex); | 139 | // TODO(yuriks): Fix error reporting |
| 140 | handle = Kernel::g_handle_table.Create(mutex).ValueOr(INVALID_HANDLE); | ||
| 140 | 141 | ||
| 141 | mutex->locked = mutex->initial_locked = initial_locked; | 142 | mutex->locked = mutex->initial_locked = initial_locked; |
| 142 | mutex->name = name; | 143 | mutex->name = name; |