mirror of
https://github.com/RPCS3/rpcs3.git
synced 2024-11-17 08:11:51 +00:00
init_mutex.hpp: Fixup
This commit is contained in:
parent
f40602cc59
commit
b64b98490e
@ -58,20 +58,14 @@ namespace stx
|
||||
if (val == 0)
|
||||
{
|
||||
// Success: obtained "init lock"
|
||||
|
||||
if constexpr (sizeof...(FAndArgs))
|
||||
{
|
||||
if (invoked_func)
|
||||
{
|
||||
invoke_callback(1, std::forward<FAndArgs>(args)...);
|
||||
}
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
|
||||
if (val & c_init_bit)
|
||||
{
|
||||
// Failure
|
||||
_this = nullptr;
|
||||
|
||||
if constexpr (Forced()())
|
||||
{
|
||||
// Forced reset
|
||||
@ -83,19 +77,6 @@ namespace stx
|
||||
_this->m_state.wait(val);
|
||||
val = _this->m_state;
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
|
||||
// Failure
|
||||
_this = nullptr;
|
||||
|
||||
if constexpr (sizeof...(FAndArgs))
|
||||
{
|
||||
if (invoked_func)
|
||||
{
|
||||
invoke_callback(1, std::forward<FAndArgs>(args)...);
|
||||
}
|
||||
}
|
||||
|
||||
break;
|
||||
@ -112,6 +93,15 @@ namespace stx
|
||||
|
||||
_this->m_state.wait(val);
|
||||
}
|
||||
|
||||
// Finalization of wait callback
|
||||
if constexpr (sizeof...(FAndArgs))
|
||||
{
|
||||
if (invoked_func)
|
||||
{
|
||||
invoke_callback(1, std::forward<FAndArgs>(args)...);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
init_lock(const init_lock&) = delete;
|
||||
|
Loading…
Reference in New Issue
Block a user