mirror of
https://gitlab.freedesktop.org/xorg/xserver.git
synced 2025-12-28 19:10:07 +01:00
Only set XI2 mask if pointer emulation is for XI2 client
The current code returns a reference to memory that may not actually be
an XI2 mask. Instead, only return a value when an XI2 client has
selected for events.
Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
Reviewed-by: Jeremy Huddleston <jeremyhu@apple.com>
Acked-by: Peter Hutterer <peter.hutterer@who-t.net>
(cherry picked from commit 93c3340364)
This commit is contained in:
parent
d21d69c2d6
commit
a37539e794
1 changed files with 2 additions and 1 deletions
|
|
@ -1327,6 +1327,7 @@ RetrieveTouchDeliveryData(DeviceIntPtr dev, TouchPointInfoPtr ti,
|
|||
{
|
||||
int rc;
|
||||
InputClients *iclients = NULL;
|
||||
*mask = NULL;
|
||||
|
||||
if (listener->type == LISTENER_GRAB ||
|
||||
listener->type == LISTENER_POINTER_GRAB) {
|
||||
|
|
@ -1378,6 +1379,7 @@ RetrieveTouchDeliveryData(DeviceIntPtr dev, TouchPointInfoPtr ti,
|
|||
if (!iclients)
|
||||
return FALSE;
|
||||
|
||||
*mask = iclients->xi2mask;
|
||||
*client = rClient(iclients);
|
||||
}
|
||||
else if (listener->level == XI) {
|
||||
|
|
@ -1409,7 +1411,6 @@ RetrieveTouchDeliveryData(DeviceIntPtr dev, TouchPointInfoPtr ti,
|
|||
*client = oclients ? rClient(oclients) : wClient(*win);
|
||||
}
|
||||
|
||||
*mask = iclients ? iclients->xi2mask : NULL;
|
||||
*grab = NULL;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue