diff --git a/examples/common/entry/entry_windows.cpp b/examples/common/entry/entry_windows.cpp index 5be017bce..e8d7e8828 100644 --- a/examples/common/entry/entry_windows.cpp +++ b/examples/common/entry/entry_windows.cpp @@ -143,13 +143,14 @@ namespace entry } WindowHandle defaultWindow = { 0 }; - GamepadHandle handle = { 0 }; for (uint32_t ii = 0; ii < BX_COUNTOF(m_state); ++ii) { XINPUT_STATE state; DWORD result = XInputGetState(ii, &state); + GamepadHandle handle = { ii }; + bool connected = ERROR_SUCCESS == result; if (connected != m_connected[ii]) { diff --git a/examples/common/entry/input.cpp b/examples/common/entry/input.cpp index a7155b5d0..697ef1e5e 100644 --- a/examples/common/entry/input.cpp +++ b/examples/common/entry/input.cpp @@ -85,7 +85,7 @@ struct InputKeyboard static uint32_t encodeKeyState(uint8_t _modifiers, bool _down) { uint32_t state = 0; - state |= uint32_t(_modifiers)<<16; + state |= uint32_t(_down ? _modifiers : 0)<<16; state |= uint32_t(_down)<<8; return state; }