diff --git a/source/ControllerSwitch/SwitchAbstractedPadHandler.cpp b/source/ControllerSwitch/SwitchAbstractedPadHandler.cpp index b9a59e6..1410fa4 100644 --- a/source/ControllerSwitch/SwitchAbstractedPadHandler.cpp +++ b/source/ControllerSwitch/SwitchAbstractedPadHandler.cpp @@ -42,13 +42,15 @@ Result SwitchAbstractedPadHandler::Initialize() void SwitchAbstractedPadHandler::Exit() { - m_controllerHandler.Exit(); - if (DoesControllerSupport(GetController()->GetType(), SUPPORTS_NOTHING)) + { + m_controllerHandler.Exit(); return; + } ExitInputThread(); ExitOutputThread(); + m_controllerHandler.Exit(); ExitAbstractedPadState(); } diff --git a/source/ControllerSwitch/SwitchHDLHandler.cpp b/source/ControllerSwitch/SwitchHDLHandler.cpp index aa58a09..6a8dd4c 100644 --- a/source/ControllerSwitch/SwitchHDLHandler.cpp +++ b/source/ControllerSwitch/SwitchHDLHandler.cpp @@ -41,13 +41,15 @@ Result SwitchHDLHandler::Initialize() void SwitchHDLHandler::Exit() { - m_controllerHandler.Exit(); - if (DoesControllerSupport(GetController()->GetType(), SUPPORTS_NOTHING)) + { + m_controllerHandler.Exit(); return; + } ExitInputThread(); ExitOutputThread(); + m_controllerHandler.Exit(); ExitHdlState(); }