diff --git a/dix/events.c b/dix/events.c index 63d24dad0..5a2d0a8e8 100644 --- a/dix/events.c +++ b/dix/events.c @@ -4139,6 +4139,9 @@ DeliverOneGrabbedEvent(InternalEvent *event, DeviceIntPtr dev, GrabPtr grab = grabinfo->grab; Mask filter; + if (grab->grabtype != level) + return 0; + switch (level) { case XI2: rc = EventToXI2(event, &xE);