gdi32: Fix compilation warnings in 64-bit mode.
diff --git a/dlls/gdi32/enhmfdrv/objects.c b/dlls/gdi32/enhmfdrv/objects.c
index 0a42af0..24a8934 100644
--- a/dlls/gdi32/enhmfdrv/objects.c
+++ b/dlls/gdi32/enhmfdrv/objects.c
@@ -392,7 +392,7 @@
/******************************************************************
* EMFDRV_CreatePenIndirect
*/
-static HPEN EMFDRV_CreatePenIndirect(PHYSDEV dev, HPEN hPen )
+static DWORD EMFDRV_CreatePenIndirect(PHYSDEV dev, HPEN hPen)
{
EMRCREATEPEN emr;
DWORD index = 0;
@@ -423,7 +423,7 @@
if(!EMFDRV_WriteRecord( dev, &emr.emr ))
index = 0;
- return (HPEN)index;
+ return index;
}
/******************************************************************
@@ -453,7 +453,7 @@
if((index = EMFDRV_FindObject(dev, hPen)) != 0)
goto found;
- if (!(index = (DWORD)EMFDRV_CreatePenIndirect(dev, hPen ))) return 0;
+ if (!(index = EMFDRV_CreatePenIndirect(dev, hPen))) return 0;
GDI_hdc_using_object(hPen, physDev->hdc);
found:
diff --git a/dlls/gdi32/font.c b/dlls/gdi32/font.c
index d9e6e35..17fcfe6 100644
--- a/dlls/gdi32/font.c
+++ b/dlls/gdi32/font.c
@@ -356,7 +356,7 @@
int charset = GetTextCharset(hdc);
/* Hmm, nicely designed api this one! */
- if(TranslateCharsetInfo((DWORD*)charset, &csi, TCI_SRCCHARSET))
+ if(TranslateCharsetInfo(ULongToPtr(charset), &csi, TCI_SRCCHARSET))
cp = csi.ciACP;
else {
switch(charset) {
@@ -2653,7 +2653,7 @@
}
charset = GetTextCharset(hDC);
- if (!TranslateCharsetInfo((DWORD *)charset, &csi, TCI_SRCCHARSET))
+ if (!TranslateCharsetInfo(ULongToPtr(charset), &csi, TCI_SRCCHARSET))
{
FIXME("Can't find codepage for charset %d\n", charset);
return 0;
@@ -2762,10 +2762,10 @@
while (!(*lpSrc>>index & 0x0001) && index<MAXTCIINDEX) index++;
break;
case TCI_SRCCODEPAGE:
- while ((UINT) (lpSrc) != FONT_tci[index].ciACP && index < MAXTCIINDEX) index++;
+ while (PtrToUlong(lpSrc) != FONT_tci[index].ciACP && index < MAXTCIINDEX) index++;
break;
case TCI_SRCCHARSET:
- while ((UINT) (lpSrc) != FONT_tci[index].ciCharset && index < MAXTCIINDEX) index++;
+ while (PtrToUlong(lpSrc) != FONT_tci[index].ciCharset && index < MAXTCIINDEX) index++;
break;
default:
return FALSE;
diff --git a/dlls/gdi32/gdiobj.c b/dlls/gdi32/gdiobj.c
index 2440b2d..7a1cdf2 100644
--- a/dlls/gdi32/gdiobj.c
+++ b/dlls/gdi32/gdiobj.c
@@ -485,7 +485,7 @@
uACP = GetACP();
csi.ciCharset = ANSI_CHARSET;
- if ( ! TranslateCharsetInfo( (LPDWORD)uACP, &csi, TCI_SRCCODEPAGE ) )
+ if ( !TranslateCharsetInfo( ULongToPtr(uACP), &csi, TCI_SRCCODEPAGE ) )
{
FIXME( "unhandled codepage %u - use ANSI_CHARSET for default stock objects\n", uACP );
return ANSI_CHARSET;
@@ -1157,7 +1157,7 @@
if (header->funcs && header->funcs->pSelectObject)
{
ret = header->funcs->pSelectObject( hObj, header, hdc );
- if (ret && ret != hObj && (INT)ret > COMPLEXREGION)
+ if (ret && ret != hObj && HandleToULong(ret) > COMPLEXREGION)
{
inc_ref_count( hObj );
dec_ref_count( ret );
diff --git a/dlls/gdi32/mfdrv/text.c b/dlls/gdi32/mfdrv/text.c
index 8154e39..0236493 100644
--- a/dlls/gdi32/mfdrv/text.c
+++ b/dlls/gdi32/mfdrv/text.c
@@ -87,7 +87,7 @@
int charset = GetTextCharset(physDev->hdc);
UINT cp = CP_ACP;
- if(TranslateCharsetInfo((DWORD*)charset, &csi, TCI_SRCCHARSET))
+ if(TranslateCharsetInfo(ULongToPtr(charset), &csi, TCI_SRCCHARSET))
cp = csi.ciACP;
else {
switch(charset) {
diff --git a/dlls/gdi32/printdrv.c b/dlls/gdi32/printdrv.c
index 15bcada..bbb6086 100644
--- a/dlls/gdi32/printdrv.c
+++ b/dlls/gdi32/printdrv.c
@@ -804,7 +804,7 @@
strcpy(RegStr_Printer, Printers);
strcat(RegStr_Printer, lpPrinter);
- if (((DWORD)lpProfile == INT_PD_DEFAULT_DEVMODE) || (HIWORD(lpProfile) &&
+ if ((PtrToUlong(lpProfile) == INT_PD_DEFAULT_DEVMODE) || (HIWORD(lpProfile) &&
(!strcmp(lpProfile, DefaultDevMode)))) {
size = DrvGetPrinterDataInternal(RegStr_Printer, lpPrinterData, cbData,
INT_PD_DEFAULT_DEVMODE);
@@ -816,7 +816,7 @@
else res = ERROR_INVALID_PRINTER_NAME;
}
else
- if (((DWORD)lpProfile == INT_PD_DEFAULT_MODEL) || (HIWORD(lpProfile) &&
+ if ((PtrToUlong(lpProfile) == INT_PD_DEFAULT_MODEL) || (HIWORD(lpProfile) &&
(!strcmp(lpProfile, PrinterModel)))) {
*lpNeeded = 32;
if (!lpPrinterData) goto failed;
@@ -890,7 +890,7 @@
TRACE("lpType %08x\n",lpType);
if ((!lpPrinter) || (!lpProfile) ||
- ((DWORD)lpProfile == INT_PD_DEFAULT_MODEL) || (HIWORD(lpProfile) &&
+ (PtrToUlong(lpProfile) == INT_PD_DEFAULT_MODEL) || (HIWORD(lpProfile) &&
(!strcmp(lpProfile, PrinterModel))))
return ERROR_INVALID_PARAMETER;
@@ -899,7 +899,7 @@
strcpy(RegStr_Printer, Printers);
strcat(RegStr_Printer, lpPrinter);
- if (((DWORD)lpProfile == INT_PD_DEFAULT_DEVMODE) || (HIWORD(lpProfile) &&
+ if ((PtrToUlong(lpProfile) == INT_PD_DEFAULT_DEVMODE) || (HIWORD(lpProfile) &&
(!strcmp(lpProfile, DefaultDevMode)))) {
if ( RegOpenKeyA(HKEY_LOCAL_MACHINE, RegStr_Printer, &hkey)
!= ERROR_SUCCESS ||
diff --git a/dlls/gdi32/region.c b/dlls/gdi32/region.c
index ac92581..b746447 100644
--- a/dlls/gdi32/region.c
+++ b/dlls/gdi32/region.c
@@ -551,7 +551,7 @@
*/
static HGDIOBJ REGION_SelectObject( HGDIOBJ handle, void *obj, HDC hdc )
{
- return (HGDIOBJ)SelectClipRgn( hdc, handle );
+ return ULongToHandle(SelectClipRgn( hdc, handle ));
}