summaryrefslogtreecommitdiff
path: root/Source/Core/InputCommon/ControllerInterface/DInput/DInputKeyboardMouse.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Source/Core/InputCommon/ControllerInterface/DInput/DInputKeyboardMouse.cpp')
-rw-r--r--Source/Core/InputCommon/ControllerInterface/DInput/DInputKeyboardMouse.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/Source/Core/InputCommon/ControllerInterface/DInput/DInputKeyboardMouse.cpp b/Source/Core/InputCommon/ControllerInterface/DInput/DInputKeyboardMouse.cpp
index ebe2e84286..bc1820b8ad 100644
--- a/Source/Core/InputCommon/ControllerInterface/DInput/DInputKeyboardMouse.cpp
+++ b/Source/Core/InputCommon/ControllerInterface/DInput/DInputKeyboardMouse.cpp
@@ -91,6 +91,11 @@ KeyboardMouse::~KeyboardMouse()
{
s_keyboard_mouse_exists = false;
+ // Independently of the order in which we do these, if we put a breakpoint on Unacquire() (or in
+ // any place in the call stack before this), when refreshing devices from the UI, on the second
+ // attempt, it will get stuck in an infinite (while) loop inside dinput8.dll. Given that it can't
+ // be otherwise be reproduced (not even with sleeps), we can just ignore the problem.
+
// kb
m_kb_device->Unacquire();
m_kb_device->Release();