- Add temporary hack to prevent MS Sndvol32 from crashing
[reactos.git] / dll / win32 / user32 / windows / message.c
index 6c84904..1761c62 100644 (file)
@@ -172,11 +172,11 @@ MsgiUMToKMMessage(PMSG UMMsg, PMSG KMMsg, BOOL Posted)
               if (0 != HIWORD(DdeLparam->Value.Packed.uiHi))
                 {
                   /* uiHi should contain a hMem from WM_DDE_EXECUTE */
-                  HGLOBAL h = DdeGetPair((HGLOBAL) DdeLparam->Value.Packed.uiHi);
+                  HGLOBAL h = DdeGetPair((HGLOBAL)(ULONG_PTR)DdeLparam->Value.Packed.uiHi);
                   if (NULL != h)
                     {
-                      GlobalFree((HGLOBAL) DdeLparam->Value.Packed.uiHi);
-                      DdeLparam->Value.Packed.uiHi = (UINT) h;
+                      GlobalFree((HGLOBAL)(ULONG_PTR)DdeLparam->Value.Packed.uiHi);
+                      DdeLparam->Value.Packed.uiHi = (UINT_PTR) h;
                     }
                 }
               FreeDDElParam(UMMsg->message, UMMsg->lParam);
@@ -686,7 +686,7 @@ MsgiUnicodeToAnsiMessage(LPMSG AnsiMsg, LPMSG UnicodeMsg)
               return FALSE;
             }
           CsA->lpszName = AnsiString.Buffer;
-          if (HIWORD((ULONG)CsW->lpszClass) != 0)
+          if (HIWORD((ULONG_PTR)CsW->lpszClass) != 0)
             {
               RtlInitUnicodeString(&UnicodeString, CsW->lpszClass);
               Status = RtlUnicodeStringToAnsiString(&AnsiString, &UnicodeString, TRUE);
@@ -850,7 +850,7 @@ MsgiUnicodeToAnsiCleanup(LPMSG AnsiMsg, LPMSG UnicodeMsg)
           Cs = (CREATESTRUCTA*) AnsiMsg->lParam;
           RtlInitAnsiString(&AnsiString, Cs->lpszName);
           RtlFreeAnsiString(&AnsiString);
-          if (HIWORD((ULONG)Cs->lpszClass) != 0)
+          if (HIWORD((ULONG_PTR)Cs->lpszClass) != 0)
             {
               RtlInitAnsiString(&AnsiString, Cs->lpszClass);
               RtlFreeAnsiString(&AnsiString);
@@ -947,7 +947,7 @@ typedef struct tagMSGCONVERSION
   MSG UnicodeMsg;
   MSG AnsiMsg;
   PMSG FinalMsg;
-  ULONG LParamSize;
+  SIZE_T LParamSize;
 } MSGCONVERSION, *PMSGCONVERSION;
 
 static PMSGCONVERSION MsgConversions = NULL;
@@ -1260,14 +1260,14 @@ IntCallWindowProcW(BOOL IsAnsiProc,
 
       if (PreResult) goto Exit;
 
-      _SEH2_TRY
-      {
+      //_SEH2_TRY
+      //{
          Result = WndProc(hWnd, Msg, wParam, lParam);
-      }
-      _SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER)
-      {
-      }
-      _SEH2_END;
+      //}
+      //_SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER)
+      //{
+      //}
+      //_SEH2_END;
 
       if (Hook && MsgOverride)
       {
@@ -2452,7 +2452,7 @@ SendNotifyMessageW(
  * @implemented
  */
 BOOL WINAPI
-TranslateMessageEx(CONST MSG *lpMsg, DWORD unk)
+TranslateMessageEx(CONST MSG *lpMsg, UINT Flags)
 {
     switch (lpMsg->message)
     {
@@ -2460,7 +2460,7 @@ TranslateMessageEx(CONST MSG *lpMsg, DWORD unk)
         case WM_KEYUP:
         case WM_SYSKEYDOWN:
         case WM_SYSKEYUP:
-            return(NtUserTranslateMessage((LPMSG)lpMsg, unk));
+            return(NtUserTranslateMessage((LPMSG)lpMsg, Flags));
 
         default:
             if ( lpMsg->message & ~WM_MAXIMUM )
@@ -2624,7 +2624,7 @@ User32CallWindowProcFromKernel(PVOID Arguments, ULONG ArgumentLength)
     }
 
   if (pci->CallbackWnd.hWnd == UMMsg.hwnd)
-     pWnd  = pci->CallbackWnd.pvWnd;
+     pWnd  = pci->CallbackWnd.pWnd;
     
   CallbackArgs->Result = IntCallWindowProcW( CallbackArgs->IsAnsiProc,
                                              CallbackArgs->Proc,