gdi32: Make the EMF driver return sane NUMCOLORS value

Dmitry Timoshkov dmitry at codeweavers.com
Tue Mar 27 02:54:49 CDT 2007


Hello,

Changelog:
    gdi32: Make the EMF driver return sane NUMCOLORS value.

---
 dlls/gdi32/enhmfdrv/dc.c             |    4 ++--
 dlls/gdi32/enhmfdrv/enhmetafiledrv.h |    1 +
 dlls/gdi32/enhmfdrv/init.c           |    1 +
 3 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/dlls/gdi32/enhmfdrv/dc.c b/dlls/gdi32/enhmfdrv/dc.c
index 485d205..74300b4 100644
--- a/dlls/gdi32/enhmfdrv/dc.c
+++ b/dlls/gdi32/enhmfdrv/dc.c
@@ -317,10 +317,10 @@ INT EMFDRV_GetDeviceCaps(PHYSDEV dev, INT cap)
         return physDev->technology;
     case PLANES:
         return physDev->planes;
-
+    case NUMCOLORS:
+        return physDev->numcolors;
     default:
         FIXME("Unimplemented cap %d\n", cap);
 	return 0;
-
     }
 }
diff --git a/dlls/gdi32/enhmfdrv/enhmetafiledrv.h b/dlls/gdi32/enhmfdrv/enhmetafiledrv.h
index 6d84d19..b0d6bf0 100644
--- a/dlls/gdi32/enhmfdrv/enhmetafiledrv.h
+++ b/dlls/gdi32/enhmfdrv/enhmetafiledrv.h
@@ -46,6 +46,7 @@ typedef struct
     INT        rastercaps;
     INT        technology;
     INT        planes;
+    INT        numcolors;
 } EMFDRV_PDEVICE;
 
 
diff --git a/dlls/gdi32/enhmfdrv/init.c b/dlls/gdi32/enhmfdrv/init.c
index 82d61c6..4f418e1 100644
--- a/dlls/gdi32/enhmfdrv/init.c
+++ b/dlls/gdi32/enhmfdrv/init.c
@@ -356,6 +356,7 @@ HDC WINAPI CreateEnhMetaFileW(
     physDev->rastercaps = GetDeviceCaps(hRefDC, RASTERCAPS);
     physDev->technology = GetDeviceCaps(hRefDC, TECHNOLOGY);
     physDev->planes = GetDeviceCaps(hRefDC, PLANES);
+    physDev->numcolors = GetDeviceCaps(hRefDC, NUMCOLORS);
 
     physDev->emh->iType = EMR_HEADER;
     physDev->emh->nSize = size;
-- 
1.5.0.5






More information about the wine-patches mailing list