dix: ProcSendEvent shouldn't use inputInfo.keyboard directly.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
This commit is contained in:
Peter Hutterer 2009-03-19 10:09:04 +10:00
parent 12aeddf5ad
commit e8094d8f3f

View File

@ -4759,7 +4759,9 @@ ProcSendEvent(ClientPtr client)
{
WindowPtr pWin;
WindowPtr effectiveFocus = NullWindow; /* only set if dest==InputFocus */
SpritePtr pSprite = PickPointer(client)->spriteInfo->sprite;
DeviceIntPtr dev = PickPointer(client);
DeviceIntPtr keybd = GetPairedDevice(dev);
SpritePtr pSprite = dev->spriteInfo->sprite;
REQUEST(xSendEventReq);
REQUEST_SIZE_MATCH(xSendEventReq);
@ -4793,7 +4795,7 @@ ProcSendEvent(ClientPtr client)
pWin = pSprite->win;
else if (stuff->destination == InputFocus)
{
WindowPtr inputFocus = inputInfo.keyboard->focus->win;
WindowPtr inputFocus = (keybd) ? keybd->focus->win : NoneWin;
if (inputFocus == NoneWin)
return Success;