"Dean Kusler" deankus@gmail.com wrote:
In dlls/winex11.drv/keyboard.c, XmbLookupString was being called with KeyRelease events, which has undefined behavior (in this case, it fails to return a valid keysym for numpad key releases). By instead calling XLookupString in the case of a KeyRelease, we can obtain a valid keysym.
While reviewing your patch in bugzilla I overlooked that you have added a check for (e.type == KeyPress) X11DRV_ToUnicodeEx as well. There is no need for that, we explicitly set e.type = KeyPress there.