diff options
author | Peter Hutterer <peter@cs.unisa.edu.au> | 2006-11-23 17:15:14 +1030 |
---|---|---|
committer | Peter Hutterer <whot@hyena.localdomain> | 2006-11-23 17:15:14 +1030 |
commit | 1c7568b8a1417257fa67c7fca69aa253099b9461 (patch) | |
tree | 9e2079d6e643d1b332e62f5806cdc5f5e2030fb9 /xfixes | |
parent | f52d53e060d0468b658a565688d1f92c156405c7 (diff) |
mi: closing memory leak, miPointer is freed in miPointerCloseScreen
bugfix: uninitialized pPointer in miPointerGetPosition ifndef MPX
adding DeviceIntPtr parameter to ScreenRec's cursor functions.
cleanup of miPointer code to use same scheme in each function
dix: MPHasCursor() function determines checking whether to invoke
cursor rendering.
animcur: adding DeviceIntPtr parameter to cursor functions but animcur relies
on the core pointer right now.
xfixes: adding DeviceIntPtr parameter to cursor functions but xfixes relies on
the core pointer right now.
rac: adding DeviceIntPtr parameter to cursor functions but RAC relies on
the core pointer right now.
ramdac: adding DeviceIntPtr parameter to cursor functions but ramdac relies on
the core pointer right now.
Diffstat (limited to 'xfixes')
-rwxr-xr-x | xfixes/cursor.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/xfixes/cursor.c b/xfixes/cursor.c index 22f9b0942..3bcd4361e 100755 --- a/xfixes/cursor.c +++ b/xfixes/cursor.c @@ -122,7 +122,8 @@ typedef struct _CursorScreen { #define Unwrap(as,s,elt) ((s)->elt = (as)->elt) static Bool -CursorDisplayCursor (ScreenPtr pScreen, +CursorDisplayCursor (DeviceIntPtr pDev, + ScreenPtr pScreen, CursorPtr pCursor) { CursorScreenPtr cs = GetCursorScreen(pScreen); @@ -131,9 +132,9 @@ CursorDisplayCursor (ScreenPtr pScreen, Unwrap (cs, pScreen, DisplayCursor); if (cs->pCursorHideCounts != NULL) { - ret = (*pScreen->DisplayCursor) (pScreen, pInvisibleCursor); + ret = (*pScreen->DisplayCursor) (pDev, pScreen, pInvisibleCursor); } else { - ret = (*pScreen->DisplayCursor) (pScreen, pCursor); + ret = (*pScreen->DisplayCursor) (pDev, pScreen, pCursor); } if (pCursor != CursorCurrent) @@ -866,7 +867,7 @@ ProcXFixesHideCursor (ClientPtr client) ret = createCursorHideCount(client, pWin->drawable.pScreen); if (ret == Success) { - (void) CursorDisplayCursor(pWin->drawable.pScreen, CursorCurrent); + (void) CursorDisplayCursor(inputInfo.pointer, pWin->drawable.pScreen, CursorCurrent); } return ret; @@ -953,7 +954,7 @@ CursorFreeHideCount (pointer data, XID id) ScreenPtr pScreen = pChc->pScreen; deleteCursorHideCount(pChc, pChc->pScreen); - (void) CursorDisplayCursor(pScreen, CursorCurrent); + (void) CursorDisplayCursor(inputInfo.pointer, pScreen, CursorCurrent); return 1; } |