Alexandre Julliard : user32: Winproc handles do not get sign-extended on 64-bit.

Alexandre Julliard julliard at winehq.org
Mon Jan 12 10:40:29 CST 2009


Module: wine
Branch: master
Commit: 9cc75a5b50710e44ac12ddb41a140b46a8350eed
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=9cc75a5b50710e44ac12ddb41a140b46a8350eed

Author: Alexandre Julliard <julliard at winehq.org>
Date:   Sat Jan 10 21:06:32 2009 +0100

user32: Winproc handles do not get sign-extended on 64-bit.

---

 dlls/user32/tests/class.c |    2 +-
 dlls/user32/winproc.c     |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/dlls/user32/tests/class.c b/dlls/user32/tests/class.c
index ce6d020..7e596f0 100644
--- a/dlls/user32/tests/class.c
+++ b/dlls/user32/tests/class.c
@@ -39,7 +39,7 @@ static const WCHAR WC_EDITW[] = {'E','d','i','t',0};
 
 #define NUMCLASSWORDS 4
 
-#define IS_WNDPROC_HANDLE(x) (((ULONG_PTR)(x) >> 16) == (~((ULONG_PTR)0) >> 16))
+#define IS_WNDPROC_HANDLE(x) (((ULONG_PTR)(x) >> 16) == (~0u >> 16))
 
 static LRESULT WINAPI ClassTest_WndProc (HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
 {
diff --git a/dlls/user32/winproc.c b/dlls/user32/winproc.c
index ac5ec41..dda649b 100644
--- a/dlls/user32/winproc.c
+++ b/dlls/user32/winproc.c
@@ -50,7 +50,7 @@ typedef struct tagWINDOWPROC
     WNDPROC        procW;    /* Unicode window proc */
 } WINDOWPROC;
 
-#define WINPROC_HANDLE (~0UL >> 16)
+#define WINPROC_HANDLE (~0u >> 16)
 #define MAX_WINPROCS  8192
 #define BUILTIN_WINPROCS 9  /* first BUILTIN_WINPROCS entries are reserved for builtin procs */
 #define MAX_WINPROC_RECURSION  64




More information about the wine-cvs mailing list