Xi: fix logic error when calculating emulated motion events

gcc -Wlogical-op
exevents.c: In function 'DeliverEmulatedMotionEvent':
exevents.c:1480:13: warning: logical 'or' of collectively exhaustive
tests is always true [-Wlogical-op]

The relevant snippet of exevents.c:

1479         if (ti->listeners[0].type != LISTENER_POINTER_REGULAR ||
1480             ti->listeners[0].type != LISTENER_POINTER_GRAB)
1481             return;

This condition was always true, causing dropped motion events.

Reported-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
This commit is contained in:
Peter Hutterer 2013-10-28 12:10:10 +10:00
parent 83bb366e71
commit 4292a39c80

View File

@ -1476,7 +1476,7 @@ DeliverEmulatedMotionEvent(DeviceIntPtr dev, TouchPointInfoPtr ti,
GrabPtr grab;
XI2Mask *mask;
if (ti->listeners[0].type != LISTENER_POINTER_REGULAR ||
if (ti->listeners[0].type != LISTENER_POINTER_REGULAR &&
ti->listeners[0].type != LISTENER_POINTER_GRAB)
return;