diff options
Diffstat (limited to 'xorg-server/dix')
-rw-r--r-- | xorg-server/dix/dispatch.c | 12 | ||||
-rw-r--r-- | xorg-server/dix/events.c | 5 |
2 files changed, 6 insertions, 11 deletions
diff --git a/xorg-server/dix/dispatch.c b/xorg-server/dix/dispatch.c index b91b41f4a..44c24337a 100644 --- a/xorg-server/dix/dispatch.c +++ b/xorg-server/dix/dispatch.c @@ -3582,14 +3582,12 @@ ProcInitialConnection(ClientPtr client) REQUEST(xReq); xConnClientPrefix *prefix; int whichbyte = 1; - char order; prefix = (xConnClientPrefix *)((char *)stuff + sz_xReq); - order = prefix->byteOrder; - if (order != 'l' && order != 'B' && order != 'r' && order != 'R') + if ((prefix->byteOrder != 'l') && (prefix->byteOrder != 'B')) return client->noClientException = -1; - if (((*(char *) &whichbyte) && (order == 'B' || order == 'R')) || - (!(*(char *) &whichbyte) && (order == 'l' || order == 'r'))) + if (((*(char *) &whichbyte) && (prefix->byteOrder == 'B')) || + (!(*(char *) &whichbyte) && (prefix->byteOrder == 'l'))) { client->swapped = TRUE; SwapConnClientPrefix(prefix); @@ -3601,10 +3599,6 @@ ProcInitialConnection(ClientPtr client) { swaps(&stuff->length); } - if (order == 'r' || order == 'R') - { - client->local = FALSE; - } ResetCurrentRequest(client); return Success; } diff --git a/xorg-server/dix/events.c b/xorg-server/dix/events.c index 536026716..04d7fb59b 100644 --- a/xorg-server/dix/events.c +++ b/xorg-server/dix/events.c @@ -1368,7 +1368,7 @@ ScreenRestructured (ScreenPtr pScreen) for (pDev = inputInfo.devices; pDev; pDev = pDev->next) { - if (!DevHasCursor(pDev)) + if (!IsFloating(pDev) && !DevHasCursor(pDev)) continue; /* GrabDevice doesn't have a confineTo field, so we don't need to @@ -3723,7 +3723,8 @@ ActivatePassiveGrab(DeviceIntPtr device, GrabPtr grab, InternalEvent *event, } } - (*grabinfo->ActivateGrab)(device, grab, currentTime, TRUE); + (*grabinfo->ActivateGrab)(device, grab, + ClientTimeToServerTime(event->any.time), TRUE); if (xE) { |