Alexandre Julliard : user32: Fix checking of show count in ShowCursor.
Alexandre Julliard
julliard at winehq.org
Mon May 10 11:59:14 CDT 2010
Module: wine
Branch: master
Commit: eeda373f6ff1989b61a256dfb66d6381930b2cb8
URL: http://source.winehq.org/git/wine.git/?a=commit;h=eeda373f6ff1989b61a256dfb66d6381930b2cb8
Author: Alexandre Julliard <julliard at winehq.org>
Date: Mon May 10 11:53:37 2010 +0200
user32: Fix checking of show count in ShowCursor.
---
dlls/user32/cursoricon.c | 11 ++++++-----
1 files changed, 6 insertions(+), 5 deletions(-)
diff --git a/dlls/user32/cursoricon.c b/dlls/user32/cursoricon.c
index 856d900..9d7788d 100644
--- a/dlls/user32/cursoricon.c
+++ b/dlls/user32/cursoricon.c
@@ -1701,7 +1701,7 @@ INT WINAPI DECLSPEC_HOTPATCH ShowCursor( BOOL bShow )
{
HCURSOR cursor;
int increment = bShow ? 1 : -1;
- int prev_count;
+ int count;
SERVER_START_REQ( set_cursor )
{
@@ -1709,15 +1709,16 @@ INT WINAPI DECLSPEC_HOTPATCH ShowCursor( BOOL bShow )
req->show_count = increment;
wine_server_call( req );
cursor = wine_server_ptr_handle( reply->prev_handle );
- prev_count = reply->prev_count;
+ count = reply->prev_count + increment;
}
SERVER_END_REQ;
- TRACE("%d, count=%d\n", bShow, prev_count + increment );
+ TRACE("%d, count=%d\n", bShow, count );
- if (!prev_count) USER_Driver->pSetCursor( bShow ? cursor : 0 );
+ if (bShow && !count) USER_Driver->pSetCursor( cursor );
+ else if (!bShow && count == -1) USER_Driver->pSetCursor( 0 );
- return prev_count + increment;
+ return count;
}
/***********************************************************************
More information about the wine-cvs
mailing list