summaryrefslogtreecommitdiff
path: root/hw/xfree86/ramdac/xf86Cursor.c
diff options
context:
space:
mode:
Diffstat (limited to 'hw/xfree86/ramdac/xf86Cursor.c')
-rw-r--r--hw/xfree86/ramdac/xf86Cursor.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/hw/xfree86/ramdac/xf86Cursor.c b/hw/xfree86/ramdac/xf86Cursor.c
index 2b73b1698..896ed3700 100644
--- a/hw/xfree86/ramdac/xf86Cursor.c
+++ b/hw/xfree86/ramdac/xf86Cursor.c
@@ -302,9 +302,9 @@ xf86CursorSetCursor(DeviceIntPtr pDev, ScreenPtr pScreen, CursorPtr pCurs,
if (pCurs == NullCursor) { /* means we're supposed to remove the cursor */
- if (ScreenPriv->SWCursor || pDev != inputInfo.pointer)
- (*ScreenPriv->spriteFuncs->SetCursor)(pDev, pScreen, NullCursor,
- x, y);
+ if (ScreenPriv->SWCursor ||
+ !(pDev == inputInfo.pointer || !pDev->isMaster && pDev->u.master == inputInfo.pointer))
+ (*ScreenPriv->spriteFuncs->SetCursor)(pDev, pScreen, NullCursor, x, y);
else if (ScreenPriv->isUp) {
xf86SetCursor(pScreen, NullCursor, x, y);
ScreenPriv->isUp = FALSE;