Fix gdi32 build.
authorSamuel Serapion <samuel.serapion@gmail.com>
Fri, 30 Oct 2009 00:24:32 +0000 (00:24 +0000)
committerSamuel Serapion <samuel.serapion@gmail.com>
Fri, 30 Oct 2009 00:24:32 +0000 (00:24 +0000)
svn path=/branches/ros-amd64-bringup/; revision=43842

reactos/dll/win32/gdi32/objects/bitmap.c
reactos/dll/win32/gdi32/objects/dc.c
reactos/dll/win32/gdi32/objects/eng.c
reactos/dll/win32/gdi32/objects/font.c
reactos/dll/win32/gdi32/objects/region.c

index f94c31a..7df0ed4 100644 (file)
@@ -418,7 +418,7 @@ GetDIBits(
         }
      }
 
-     if ((ULONG)lpvBits & (sizeof(DWORD) - 1))
+     if ((PtrToUlong(lpvBits)) & (sizeof(DWORD) - 1))
      {
          pvSafeBits = RtlAllocateHeap(RtlGetProcessHeap(), 0, cjBmpScanSize);
          if (!pvSafeBits)
index f6b0f90..bc713ff 100644 (file)
@@ -322,7 +322,7 @@ DeleteObject(HGDIOBJ hObject)
   /* From Wine: DeleteObject does not SetLastError() on a null object */
   if(!hObject) return FALSE;
 
-  if (0 != ((DWORD) hObject & GDI_HANDLE_STOCK_MASK))
+  if (0 != (HandleToUlong(hObject) & GDI_HANDLE_STOCK_MASK))
   { // Relax! This is a normal return!
      DPRINT("Trying to delete system object 0x%x\n", hObject);
      return TRUE;
@@ -1559,7 +1559,7 @@ SelectObject(HDC hDC,
     switch (uType)
     {
         case GDI_OBJECT_TYPE_REGION:
-            return (HGDIOBJ)ExtSelectClipRgn(hDC, hGdiObj, RGN_COPY);
+            return ULongToHandle(ExtSelectClipRgn(hDC, hGdiObj, RGN_COPY));
 
         case GDI_OBJECT_TYPE_BITMAP:
             return NtGdiSelectBitmap(hDC, hGdiObj);
index d29adf0..313c4f1 100644 (file)
@@ -163,7 +163,7 @@ EngGetDriverName(HDEV hdev)
   
   if (pPDev->Sig != PDEV_UMPD_ID)
   {
-     pPDev = (PUMPDEV)pPDev->Sig;
+     pPDev = (PUMPDEV)ULongToPtr(pPDev->Sig);//wtf?
   }
   return pPDev->pdi5Info->pDriverPath;
 }
@@ -180,7 +180,7 @@ EngGetPrinterDataFileName(HDEV hdev)
 
   if (pPDev->Sig != PDEV_UMPD_ID)
   {
-     pPDev = (PUMPDEV)pPDev->Sig;
+     pPDev = (PUMPDEV)ULongToPtr(pPDev->Sig);//wtf
   }
   return pPDev->pdi5Info->pDataFile;
 }
index 9bdbcd6..2e07c32 100644 (file)
@@ -1021,19 +1021,19 @@ GetOutlineTextMetricsA(
     needed = sizeof(OUTLINETEXTMETRICA);
     if(lpOTMW->otmpFamilyName)
         needed += WideCharToMultiByte(CP_ACP, 0,
-          (WCHAR*)((char*)lpOTMW + (int)lpOTMW->otmpFamilyName), -1,
+          (WCHAR*)((char*)lpOTMW + (ptrdiff_t)lpOTMW->otmpFamilyName), -1,
                                      NULL, 0, NULL, NULL);
     if(lpOTMW->otmpFaceName)
         needed += WideCharToMultiByte(CP_ACP, 0,
-          (WCHAR*)((char*)lpOTMW + (int)lpOTMW->otmpFaceName), -1,
+          (WCHAR*)((char*)lpOTMW + (ptrdiff_t)lpOTMW->otmpFaceName), -1,
                                      NULL, 0, NULL, NULL);
     if(lpOTMW->otmpStyleName)
         needed += WideCharToMultiByte(CP_ACP, 0,
-          (WCHAR*)((char*)lpOTMW + (int)lpOTMW->otmpStyleName), -1,
+          (WCHAR*)((char*)lpOTMW + (ptrdiff_t)lpOTMW->otmpStyleName), -1,
                                      NULL, 0, NULL, NULL);
     if(lpOTMW->otmpFullName)
         needed += WideCharToMultiByte(CP_ACP, 0,
-          (WCHAR*)((char*)lpOTMW + (int)lpOTMW->otmpFullName), -1,
+          (WCHAR*)((char*)lpOTMW + (ptrdiff_t)lpOTMW->otmpFullName), -1,
                                      NULL, 0, NULL, NULL);
 
     if(!lpOTM) {
@@ -1090,7 +1090,7 @@ GetOutlineTextMetricsA(
     if(lpOTMW->otmpFamilyName) {
         output->otmpFamilyName = (LPSTR)(ptr - (char*)output);
        len = WideCharToMultiByte(CP_ACP, 0,
-            (WCHAR*)((char*)lpOTMW + (int)lpOTMW->otmpFamilyName), -1,
+            (WCHAR*)((char*)lpOTMW + (ptrdiff_t)lpOTMW->otmpFamilyName), -1,
                                  ptr, left, NULL, NULL);
        left -= len;
        ptr += len;
@@ -1100,7 +1100,7 @@ GetOutlineTextMetricsA(
     if(lpOTMW->otmpFaceName) {
         output->otmpFaceName = (LPSTR)(ptr - (char*)output);
        len = WideCharToMultiByte(CP_ACP, 0,
-            (WCHAR*)((char*)lpOTMW + (int)lpOTMW->otmpFaceName), -1,
+            (WCHAR*)((char*)lpOTMW + (ptrdiff_t)lpOTMW->otmpFaceName), -1,
                                  ptr, left, NULL, NULL);
        left -= len;
        ptr += len;
@@ -1110,7 +1110,7 @@ GetOutlineTextMetricsA(
     if(lpOTMW->otmpStyleName) {
         output->otmpStyleName = (LPSTR)(ptr - (char*)output);
        len = WideCharToMultiByte(CP_ACP, 0,
-            (WCHAR*)((char*)lpOTMW + (int)lpOTMW->otmpStyleName), -1,
+            (WCHAR*)((char*)lpOTMW + (ptrdiff_t)lpOTMW->otmpStyleName), -1,
                                  ptr, left, NULL, NULL);
        left -= len;
        ptr += len;
@@ -1120,7 +1120,7 @@ GetOutlineTextMetricsA(
     if(lpOTMW->otmpFullName) {
         output->otmpFullName = (LPSTR)(ptr - (char*)output);
        len = WideCharToMultiByte(CP_ACP, 0,
-            (WCHAR*)((char*)lpOTMW + (int)lpOTMW->otmpFullName), -1,
+            (WCHAR*)((char*)lpOTMW + (ptrdiff_t)lpOTMW->otmpFullName), -1,
                                  ptr, left, NULL, NULL);
        left -= len;
     } else
index 7dbd970..5864bef 100644 (file)
@@ -142,7 +142,7 @@ HRGN
 WINAPI
 CreatePolygonRgn( const POINT * lppt, int cPoints, int fnPolyFillMode)
 {
-    return (HRGN) NtGdiPolyPolyDraw( (HDC) fnPolyFillMode, (PPOINT) lppt, (PULONG) &cPoints, 1, GdiPolyPolyRgn);
+    return (HRGN) NtGdiPolyPolyDraw( ULongToPtr(fnPolyFillMode), (PPOINT) lppt, (PULONG) &cPoints, 1, GdiPolyPolyRgn);
 }
 
 
@@ -156,7 +156,7 @@ CreatePolyPolygonRgn( const POINT* lppt,
                       int nCount,
                       int fnPolyFillMode)
 {
-    return (HRGN) NtGdiPolyPolyDraw(  (HDC) fnPolyFillMode, (PPOINT) lppt, (PULONG) lpPolyCounts, (ULONG) nCount, GdiPolyPolyRgn );
+    return (HRGN) NtGdiPolyPolyDraw( ULongToHandle(fnPolyFillMode), (PPOINT) lppt, (PULONG) lpPolyCounts, (ULONG) nCount, GdiPolyPolyRgn );
 }