From feaa5fa6712c8c6f4ca97766e2ac0338253cf3b8 Mon Sep 17 00:00:00 2001 From: Peter Hutterer Date: Thu, 25 Sep 2008 11:03:22 +0930 Subject: [PATCH] xfixes: realize the invisible cursor before displaying it. AllocARGBCursor realizes the cursor but can only do so if we have devices there already. If we don't - then the cursor needs to be realized elsewhere. This is usually done in InitializeSprite, but since xfixes just hard-swaps the (realized) cursor to the InvisibleCursor, we need to manually realize it before trying to display it. --- xfixes/cursor.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/xfixes/cursor.c b/xfixes/cursor.c index 2a42a0b2c..2c584f9f4 100755 --- a/xfixes/cursor.c +++ b/xfixes/cursor.c @@ -142,7 +142,8 @@ CursorDisplayCursor (DeviceIntPtr pDev, CursorVisible = TRUE; if (cs->pCursorHideCounts != NULL || !CursorVisible) { - ret = (*pScreen->DisplayCursor) (pDev, pScreen, pInvisibleCursor); + ret = ((*pScreen->RealizeCursor)(pDev, pScreen, pInvisibleCursor) && + (*pScreen->DisplayCursor) (pDev, pScreen, pInvisibleCursor)); } else { ret = (*pScreen->DisplayCursor) (pDev, pScreen, pCursor); }