aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/hle/kernel/mutex.cpp
diff options
context:
space:
mode:
authorGravatar bunnei <bunneidev@gmail.com>2015-01-20 18:16:45 -0500
committerGravatar bunnei <bunneidev@gmail.com>2015-01-21 20:47:49 -0500
commit15b6a4d9add6b260a2a1a84ab6228addced4f851 (patch)
treee9934863ebd6483cabae0f6c280fab7e34eee32e /src/core/hle/kernel/mutex.cpp
parentc68eb1569549ae49ae25c6c29cec2e10d8329f2d (diff)
Kernel: Changed "ShouldWait" to return bool and "Acquire" to return void.
Diffstat (limited to 'src/core/hle/kernel/mutex.cpp')
-rw-r--r--src/core/hle/kernel/mutex.cpp24
1 files changed, 9 insertions, 15 deletions
diff --git a/src/core/hle/kernel/mutex.cpp b/src/core/hle/kernel/mutex.cpp
index 01d2263f..355824e6 100644
--- a/src/core/hle/kernel/mutex.cpp
+++ b/src/core/hle/kernel/mutex.cpp
@@ -27,8 +27,8 @@ public:
std::string name; ///< Name of mutex (optional)
SharedPtr<Thread> current_thread; ///< Thread that has acquired the mutex
- ResultVal<bool> ShouldWait() override;
- ResultVal<bool> Acquire() override;
+ bool ShouldWait() override;
+ void Acquire() override;
};
////////////////////////////////////////////////////////////////////////////////////////////////////
@@ -159,20 +159,14 @@ Handle CreateMutex(bool initial_locked, const std::string& name) {
return handle;
}
-ResultVal<bool> Mutex::ShouldWait() {
- return MakeResult<bool>(locked && (current_thread != GetCurrentThread()));
+bool Mutex::ShouldWait() {
+ return locked && current_thread != GetCurrentThread();
}
-ResultVal<bool> Mutex::Acquire() {
- bool res = false;
-
- if (!locked) {
- // Lock the mutex when the first thread accesses it
- locked = true;
- res = true;
- MutexAcquireLock(this);
- }
-
- return MakeResult<bool>(res);
+void Mutex::Acquire() {
+ _assert_msg_(Kernel, !ShouldWait(), "object unavailable!");
+ locked = true;
+ MutexAcquireLock(this);
}
+
} // namespace