dix: Each device needs to differ between a core grab and an XI grab,

otherwise a Xi grab may overwrite or release a core grab.
        Replace grab and associates with coreGrab and deviceGrab structures,
        adjust rest of dix/Xi/etc to compile.

xfree86: Don't check for core devices, we'll have the virtual ones anyway.
         If we check, the first mouse device is duplicated and sends
         double events.
This commit is contained in:
Peter Hutterer 2007-03-08 17:17:23 +10:30
commit ceca5670fe
17 changed files with 325 additions and 232 deletions

View file

@ -822,10 +822,13 @@ CALLBACK(SecurityCheckDeviceAccess)
untrusted_got_event = FALSE;
found_event_window = FALSE;
if (dev->grab)
/* We can just use coreGrab as a comment a few lines above clearly states
"device security other than keyboard is not implemented yet". The core
kbd should never have a device grab set. */
if (dev->coreGrab.grab)
{
untrusted_got_event =
(TRUSTLEVEL(rClient(dev->grab)) != XSecurityClientTrusted);
(TRUSTLEVEL(rClient(dev->coreGrab.grab)) != XSecurityClientTrusted);
}
else
{