diff --git a/Source/Core/Core/HW/WiimoteReal/WiimoteReal.cpp b/Source/Core/Core/HW/WiimoteReal/WiimoteReal.cpp index 4967032f46..ab8dcc8460 100644 --- a/Source/Core/Core/HW/WiimoteReal/WiimoteReal.cpp +++ b/Source/Core/Core/HW/WiimoteReal/WiimoteReal.cpp @@ -485,9 +485,12 @@ void WiimoteScanner::ThreadFunc() bool Wiimote::Connect() { - m_thread_ready.store(false); - StartThread(); - WaitReady(); + if (!m_run_thread.load()) + { + m_thread_ready.store(false); + StartThread(); + WaitReady(); + } return IsConnected(); }