http://bugs.winehq.org/show_bug.cgi?id=58915
Bug ID: 58915 Summary: Some RPG Maker MZ games experience issues with input handling Product: Wine Version: 10.17 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: win32u Assignee: wine-bugs@winehq.org Reporter: lorenzofer@live.it Distribution: ---
Hi, Some RPG Maker games, epsecially the ones from the MZ variant, where sometimes some key press events aren't handled properly and are replayed in a delayed manner often more then once. Most games experience this issues in dialogue, where the dialogue start skipping fast without any user input, but there is a game Mansion Tour that is having issues even in the map or in battle mode.
The +key log show that when this happen it register a KeyPRess but after the NtUserTranslateMessage 1 -> PostMessageW(0x300ba,WM_CHAR,<x>,001c0001) for <x> in L"\r" there is not corresponding KeyRelease. This key is the key that after other inputs start replaying more the once delayed.
bisect shows d3cb94b543e8ccc4a6baa7a8a2c31142a7b1a814 is the first bad commit commit d3cb94b543e8ccc4a6baa7a8a2c31142a7b1a814 Author: Rémi Bernon rbernon@codeweavers.com Date: Fri Oct 3 10:46:25 2025 +0200
win32u: Check QS_DRIVER bit before calling ProcessEvents.
dlls/win32u/message.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) while it doesn't revert cleanly, removing the if (check_internal_bits( QS_DRIVER )) before user_driver->pProcessEvents remove this regression