dix: check if keybd->key is valid before getting the keyboard state.

For floating SDs, GetPairedDevice() returns the SD itself, hence keybd->key
may be NULL.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
This commit is contained in:
Peter Hutterer 2009-02-19 09:18:53 +10:00
parent e0a451eb7c
commit 64e595d12e

View File

@ -3969,7 +3969,7 @@ DeviceEnterLeaveEvent(
devEnterLeave->mode |= (sameScreen ? (ELFlagSameScreen << 4) : 0);
devEnterLeave->state = mouse->button->state & 0x1f00;
if (keybd)
if (keybd && keybd->key)
devEnterLeave->state |= XkbGrabStateFromRec(&keybd->key->xkbInfo->state);
mskidx = mouse->id;