summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichal Srb <msrb@suse.com>2014-11-01 20:00:56 +0200
committerPeter Hutterer <peter.hutterer@who-t.net>2014-11-03 15:28:36 +1000
commit5810d0797160a97012664ffe719a59e1b288a525 (patch)
treeaaca3d0d0a62670bcdb5d1f17bdb83480ed8a8cb
parentf699770e7c92da1dbf16892fde83438f0b79c979 (diff)
downloadxorg-lib-libXi-5810d0797160a97012664ffe719a59e1b288a525.tar.gz
Fix logic in _XIAllowEvents and prevent double unlock.
Replacing the second _XiCheckExtInit with _XiCheckVersion prevents possible double unlock as _XiCheckExtInit actually unlocks the display when it returns -1. Signed-off-by: Michal Srb <msrb@suse.com> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-rw-r--r--src/XIAllowEvents.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/XIAllowEvents.c b/src/XIAllowEvents.c
index 2468fce..52c17ab 100644
--- a/src/XIAllowEvents.c
+++ b/src/XIAllowEvents.c
@@ -40,7 +40,7 @@ static Status
_XIAllowEvents(Display *dpy, int deviceid, int event_mode, Time time,
unsigned int touchid, Window grab_window)
{
- Bool have_XI22 = True;
+ Bool have_XI22 = False;
xXIAllowEventsReq *req;
xXI2_2AllowEventsReq *req_XI22;
@@ -50,7 +50,7 @@ _XIAllowEvents(Display *dpy, int deviceid, int event_mode, Time time,
if (_XiCheckExtInit(dpy, XInput_2_0, extinfo) == -1)
return (NoSuchExtension);
- if (_XiCheckExtInit(dpy, XInput_2_2, extinfo) == 0)
+ if (_XiCheckVersion(extinfo, XInput_2_2) == 0)
have_XI22 = True;
if (have_XI22)