xkb: Hold input lock across injected key event processing
This makes the code more consistent with other versions of out-of-queue event processing Signed-off-by: Keith Packard <keithp@keithp.com> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
This commit is contained in:
parent
05d549d604
commit
728c9570a0
|
@ -1534,13 +1534,12 @@ InjectPointerKeyEvents(DeviceIntPtr dev, int type, int button, int flags,
|
||||||
UpdateFromMaster(&events[nevents], lastSlave, DEVCHANGE_POINTER_EVENT,
|
UpdateFromMaster(&events[nevents], lastSlave, DEVCHANGE_POINTER_EVENT,
|
||||||
&nevents);
|
&nevents);
|
||||||
miPointerSetWaitForUpdate(pScreen, saveWait);
|
miPointerSetWaitForUpdate(pScreen, saveWait);
|
||||||
input_unlock();
|
|
||||||
|
|
||||||
for (i = 0; i < nevents; i++)
|
for (i = 0; i < nevents; i++)
|
||||||
mieqProcessDeviceEvent(ptr, &events[i], NULL);
|
mieqProcessDeviceEvent(ptr, &events[i], NULL);
|
||||||
|
input_unlock();
|
||||||
|
|
||||||
FreeEventList(events, GetMaximumEventsNum());
|
FreeEventList(events, GetMaximumEventsNum());
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
|
Loading…
Reference in New Issue