From 4f73ae7bbed3b4f1ff707ff63c51fef9dd616b8d Mon Sep 17 00:00:00 2001 From: Nicolas Bruguier Date: Wed, 18 Mar 2009 21:00:16 +0100 Subject: [PATCH] xfixes: Fix animated cursor disappearing on [Hide/Show]Cursor When calling XFixesHideCursor or CursorFreeHideCount we call CursorDisplayCursor to initiate or to finish hiding. This function do Unwrap/Wrap which break stack function calling and loose DisplayCursor from render animcursor . Just call directly the parent function when initiate or finish hiding/showing cursor. --- xfixes/cursor.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/xfixes/cursor.c b/xfixes/cursor.c index 99403e5..eb52e50 100644 --- a/xfixes/cursor.c +++ b/xfixes/cursor.c @@ -893,7 +893,7 @@ ProcXFixesHideCursor (ClientPtr client) ret = createCursorHideCount(client, pWin->drawable.pScreen); if (ret == Success) { - CursorDisplayCursor(PickPointer(client), pWin->drawable.pScreen, CursorCurrent); + (*pWin->drawable.pScreen->DisplayCursor) (PickPointer(client), pWin->drawable.pScreen, CursorCurrent); } return ret; @@ -987,7 +987,7 @@ CursorFreeHideCount (pointer data, XID id) ScreenPtr pScreen = pChc->pScreen; deleteCursorHideCount(pChc, pChc->pScreen); - CursorDisplayCursor(inputInfo.pointer, pScreen, CursorCurrent); + (*pScreen->DisplayCursor) (inputInfo.pointer, pScreen, CursorCurrent); return 1; } -- 1.5.4.3