From 5810d0797160a97012664ffe719a59e1b288a525 Mon Sep 17 00:00:00 2001 From: Michal Srb Date: Sat, 1 Nov 2014 20:00:56 +0200 Subject: 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 Signed-off-by: Peter Hutterer --- src/XIAllowEvents.c | 4 ++-- 1 file 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) -- cgit v1.2.1