diff --git a/dlls/msvideo/msvideo16.c b/dlls/msvideo/msvideo16.c index b3889ac918a..fc735704eb3 100644 --- a/dlls/msvideo/msvideo16.c +++ b/dlls/msvideo/msvideo16.c @@ -32,13 +32,11 @@ WINE_DEFAULT_DEBUG_CHANNEL(msvideo); #define HDC_32(h16) ((HDC)(ULONG_PTR)(h16)) #define HDRAWDIB_32(h16) ((HDRAWDIB)(ULONG_PTR)(h16)) #define HIC_32(h16) ((HIC)(ULONG_PTR)(h16)) -#define HPALETTE_32(h16) ((HPALETTE)(ULONG_PTR)(h16)) /* handle --> handle16 conversions */ #define HDC_16(h32) (LOWORD(h32)) #define HDRAWDIB_16(h32) (LOWORD(h32)) #define HIC_16(h32) (LOWORD(h32)) -#define HPALETTE_16(h32) (LOWORD(h32)) /*********************************************************************** diff --git a/dlls/msvideo/msvideo_main.c b/dlls/msvideo/msvideo_main.c index 17aae3100a0..6eba1f48859 100644 --- a/dlls/msvideo/msvideo_main.c +++ b/dlls/msvideo/msvideo_main.c @@ -672,7 +672,7 @@ LPVOID MSVIDEO_MapMsg16To32(UINT msg, LPDWORD lParam1, LPDWORD lParam2) { ret = icdb16; COPY(icdb,dwFlags); - COPY(icdb,hpal); + icdb->hpal = HPALETTE_32(icdb16->hpal); COPY(icdb,hwnd); COPY(icdb,hdc); COPY(icdb,xDst); diff --git a/dlls/msvideo/vfw16.h b/dlls/msvideo/vfw16.h index 4266104d947..7d46da28d5b 100644 --- a/dlls/msvideo/vfw16.h +++ b/dlls/msvideo/vfw16.h @@ -117,6 +117,10 @@ HIC16 VFWAPI ICOpen16(DWORD,DWORD,UINT16); HIC16 VFWAPI ICOpenFunction16(DWORD,DWORD,UINT16,FARPROC16); LRESULT VFWAPI ICSendMessage16(HIC16,UINT16,DWORD,DWORD); +/* handle <-> handle16 conversions */ +#define HPALETTE_32(h16) ((HPALETTE)(ULONG_PTR)(h16)) +#define HPALETTE_16(h32) (LOWORD(h32)) + #ifdef __cplusplus } #endif /* __cplusplus */ diff --git a/graphics/x11drv/palette.c b/graphics/x11drv/palette.c index 740a6d939fc..05345c631dd 100644 --- a/graphics/x11drv/palette.c +++ b/graphics/x11drv/palette.c @@ -829,7 +829,7 @@ int X11DRV_PALETTE_ToPhysical( X11DRV_PDEVICE *physDev, COLORREF color ) { DC *dc = physDev ? physDev->dc : NULL; WORD index = 0; - HPALETTE16 hPal = (dc)? dc->hPalette: GetStockObject(DEFAULT_PALETTE); + HPALETTE hPal = (dc)? dc->hPalette: GetStockObject(DEFAULT_PALETTE); unsigned char spec_type = color >> 24; PALETTEOBJ* palPtr = (PALETTEOBJ *) GDI_GetObjPtr( hPal, PALETTE_MAGIC ); diff --git a/include/windef.h b/include/windef.h index 07bc6173984..8e0af592c87 100644 --- a/include/windef.h +++ b/include/windef.h @@ -87,7 +87,7 @@ DECLARE_HANDLE(HKL); DECLARE_OLD_HANDLE(HMENU); DECLARE_HANDLE(HMETAFILE); DECLARE_HANDLE(HMONITOR); -DECLARE_OLD_HANDLE(HPALETTE); +DECLARE_HANDLE(HPALETTE); DECLARE_OLD_HANDLE(HPEN); DECLARE_OLD_HANDLE(HRGN); DECLARE_OLD_HANDLE(HRSRC);