diff options
author | Jamey Sharp <jamey@minilop.net> | 2006-10-15 00:26:21 -0700 |
---|---|---|
committer | Jamey Sharp <jamey@minilop.net> | 2006-10-15 00:33:56 -0700 |
commit | c27e00ceceed3fea011c98c0e70ab568bf0687c6 (patch) | |
tree | 62871bc653a38f2477f8043e7b17e4657cb48436 /src/XSelect.c | |
parent | 5dda1e1509d40ef64ebc816ce538cef462a4fa51 (diff) |
Don't call XInput_find_display in _XiCheckExtInit, while the Display lock is held.
All callers of _XiCheckExtInit have already called XInput_find_display
first outside the lock, so just pass their copy of the XExtDisplayInfo
structure down. Besides being more correct, this should be slightly
faster. :-)
Thanks to Magnus Kessler <Magnus.Kessler@gmx.net> for identifying
the bug and proposing a workaround.
Diffstat (limited to 'src/XSelect.c')
-rw-r--r-- | src/XSelect.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/XSelect.c b/src/XSelect.c index b23829a..af0fb84 100644 --- a/src/XSelect.c +++ b/src/XSelect.c @@ -71,7 +71,7 @@ XSelectExtensionEvent(dpy, w, event_list, count) XExtDisplayInfo *info = XInput_find_display(dpy); LockDisplay(dpy); - if (_XiCheckExtInit(dpy, XInput_Initial_Release) == -1) + if (_XiCheckExtInit(dpy, XInput_Initial_Release, info) == -1) return (NoSuchExtension); GetReq(SelectExtensionEvent, req); |