mirror of
https://github.com/cemu-project/Cemu.git
synced 2024-11-25 18:46:55 +01:00
Input: Fix potential race condition
Operator = for ControllerButtonState wasn't properly synchronized
This commit is contained in:
parent
9d55f46eb1
commit
f2671f417f
@ -102,6 +102,7 @@ struct ControllerButtonState
|
|||||||
ControllerButtonState& operator=(ControllerButtonState&& other)
|
ControllerButtonState& operator=(ControllerButtonState&& other)
|
||||||
{
|
{
|
||||||
cemu_assert_debug(!other.m_spinlock.is_locked());
|
cemu_assert_debug(!other.m_spinlock.is_locked());
|
||||||
|
std::scoped_lock _l(this->m_spinlock, other.m_spinlock);
|
||||||
this->m_pressedButtons = std::move(other.m_pressedButtons);
|
this->m_pressedButtons = std::move(other.m_pressedButtons);
|
||||||
return *this;
|
return *this;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user