diff options
author | Peter Hutterer <peter.hutterer@who-t.net> | 2009-06-03 12:30:49 +1000 |
---|---|---|
committer | Peter Hutterer <peter.hutterer@who-t.net> | 2009-06-03 14:38:55 +1000 |
commit | af4e658401ecbd2f2cc515b4c5abe5aee361cd64 (patch) | |
tree | 1c012204704015cd42507ad68bea62393089f4d8 /mi | |
parent | eb3fe72cbcd10c3953d713e07c321e695194a328 (diff) |
mi: only process master if the SD is still attached.
SDs may be detached during event processing (e.g. if a passive grab
activates). In this case, the event must not be processed through the master
device.
Reported-by: Thomas Jaeger
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Diffstat (limited to 'mi')
-rw-r--r-- | mi/mieq.c | 4 |
1 files changed, 3 insertions, 1 deletions
@@ -402,7 +402,9 @@ mieqProcessDeviceEvent(DeviceIntPtr dev, /* process slave first, then master */ dev->public.processInputProc(event, dev); - if (master) + /* Check for the SD's master in case the device got detached + * during event processing */ + if (master && dev->u.master) master->public.processInputProc( (InternalEvent*)masterEvents->event, master); |