From 97e29ffb5bf04a9d8280f1fa32ceced148503492 Mon Sep 17 00:00:00 2001 From: Peter Hutterer Date: Fri, 3 Jul 2009 09:52:04 +1000 Subject: [PATCH] xfree86: fix wrong IsMaster() check causing crashes. Crashes caused by dereferencing NULL if the path was executed for a floating slave device. Signed-off-by: Peter Hutterer --- hw/xfree86/ramdac/xf86Cursor.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/hw/xfree86/ramdac/xf86Cursor.c b/hw/xfree86/ramdac/xf86Cursor.c index b474ff318..6b71f4677 100644 --- a/hw/xfree86/ramdac/xf86Cursor.c +++ b/hw/xfree86/ramdac/xf86Cursor.c @@ -303,8 +303,7 @@ xf86CursorSetCursor(DeviceIntPtr pDev, ScreenPtr pScreen, CursorPtr pCurs, if (pCurs == NullCursor) { /* means we're supposed to remove the cursor */ if (ScreenPriv->SWCursor || - !(pDev == inputInfo.pointer || !IsMaster(pDev) && - GetMaster(pDev->u.master, MASTER_POINTER) == inputInfo.pointer)) + !(GetMaster(pDev, MASTER_POINTER) == inputInfo.pointer)) (*ScreenPriv->spriteFuncs->SetCursor)(pDev, pScreen, NullCursor, x, y); else if (ScreenPriv->isUp) { xf86SetCursor(pScreen, NullCursor, x, y);