diff --git a/src/f_wipe.cpp b/src/f_wipe.cpp index 6a8587586..9ecb41c32 100644 --- a/src/f_wipe.cpp +++ b/src/f_wipe.cpp @@ -494,6 +494,11 @@ void F_RunWipe(UINT8 wipemode, UINT8 wipetype, boolean drawMenu, const char *col WipeInAction = true; wipe_scr = screens[0]; + // FIXME: Wipes SUCK and drop input events for some reason, causing stuck gamepad inputs. + // It's better to ignore an intentional hold than to turn a tap into a phantom hold. + // (If you're removing this, remove the one after the inner loop too!) + memset(gamekeydown, 0, sizeof(gamekeydown)); + // lastwipetic should either be 0 or the tic we last wiped // on for fade-to-black for (;;) @@ -581,6 +586,11 @@ void F_RunWipe(UINT8 wipemode, UINT8 wipetype, boolean drawMenu, const char *col WipeInAction = false; + // FIXME: Wipes SUCK and drop input events for some reason, causing stuck gamepad inputs. + // It's better to ignore an intentional hold than to turn a tap into a phantom hold. + // (If you're removing this, remove the one before the inner loop too!) + memset(gamekeydown, 0, sizeof(gamekeydown)); + if (fcolor) { Z_Free(fcolor);