aboutsummaryrefslogtreecommitdiffstats
path: root/dibcall.c
diff options
context:
space:
mode:
Diffstat (limited to 'dibcall.c')
-rw-r--r--dibcall.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/dibcall.c b/dibcall.c
index bd37a2e..1ad2cfd 100644
--- a/dibcall.c
+++ b/dibcall.c
@@ -187,6 +187,10 @@ void WINAPI __loadds MoveCursor(WORD absX, WORD absY)
SVGA_MoveCursor(cursorVisible, absX, absY, 0);
SVGAHDA_unlock(LOCK_FIFO);
}
+
+ /* save last position */
+ cursorX = absX;
+ cursorY = absY;
}
else
{
@@ -281,6 +285,13 @@ WORD WINAPI __loadds SetCursor_driver(CURSORSHAPE __far *lpCursor)
}
}
+ /* move cursor to last known position */
+ if(SVGAHDA_trylock(LOCK_FIFO))
+ {
+ SVGA_MoveCursor(cursorVisible, cursorX, cursorY, 0);
+ SVGAHDA_unlock(LOCK_FIFO);
+ }
+
cursorVisible = TRUE;
}
else