Re: Patch for Bugzilla Bug 6323
"Dean Kusler" <deankus(a)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. -- Dmitry.
On Tuesday 30 January 2007 11:28:23 pm Dmitry Timoshkov wrote:
"Dean Kusler" <deankus(a)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.
Fair enough - I just did a quick search for all instances of XmbLookupString, 'cause I was really getting tired of playing WoW without numpad key bindings. :-)
participants (2)
-
Dean Kusler -
Dmitry Timoshkov