Mouse position is signed.

diff --git a/dlls/comctl32/header.c b/dlls/comctl32/header.c
index 42a633c..02edfbd 100644
--- a/dlls/comctl32/header.c
+++ b/dlls/comctl32/header.c
@@ -393,7 +393,7 @@
 	   *pFlags |= HHT_TOLEFT;
 	}
 	else if (lpPt->x > rect.right) {
-	    TRACE("TO LEFT\n");
+	    TRACE("TO RIGHT\n");
 	    *pFlags |= HHT_TORIGHT;
 	}
 
@@ -1234,8 +1234,8 @@
     INT   nItem, nWidth;
     HDC   hdc;
 
-    pt.x = (INT)LOWORD(lParam);
-    pt.y = (INT)HIWORD(lParam);
+    pt.x = (INT)SLOWORD(lParam);
+    pt.y = (INT)SHIWORD(lParam);
     HEADER_InternalHitTest (hwnd, &pt, &flags, &nItem);
 
     if (infoPtr->bPressed) {
@@ -1297,8 +1297,8 @@
     INT   nItem, nWidth;
     HDC   hdc;
 
-    pt.x = (INT)LOWORD(lParam);
-    pt.y = (INT)HIWORD(lParam);
+    pt.x = (INT)SLOWORD(lParam);
+    pt.y = (INT)SHIWORD(lParam);
     HEADER_InternalHitTest (hwnd, &pt, &flags, &nItem);
 
     if ((dwStyle & HDS_BUTTONS) && (dwStyle & HDS_HOTTRACK)) {