Jacek Caban : gdi32: Move GdiConvertToDevmodeW to gdidc.c.
Alexandre Julliard
julliard at winehq.org
Thu Sep 2 15:45:31 CDT 2021
Module: wine
Branch: master
Commit: 75d21c999e39cf5c1b3feb6e2c50cdc30a077325
URL: https://source.winehq.org/git/wine.git/?a=commit;h=75d21c999e39cf5c1b3feb6e2c50cdc30a077325
Author: Jacek Caban <jacek at codeweavers.com>
Date: Thu Sep 2 14:16:00 2021 +0200
gdi32: Move GdiConvertToDevmodeW to gdidc.c.
Signed-off-by: Jacek Caban <jacek at codeweavers.com>
Signed-off-by: Huw Davies <huw at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
dlls/gdi32/driver.c | 52 +---------------------------------------------------
dlls/gdi32/gdidc.c | 49 +++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 50 insertions(+), 51 deletions(-)
diff --git a/dlls/gdi32/driver.c b/dlls/gdi32/driver.c
index 340476bca10..95d1583a98a 100644
--- a/dlls/gdi32/driver.c
+++ b/dlls/gdi32/driver.c
@@ -225,7 +225,7 @@ done:
/***********************************************************************
- * __wine_set_display_driver (GDI32.@)
+ * __wine_set_display_driver (win32u.@)
*/
void CDECL __wine_set_display_driver( HMODULE module )
{
@@ -941,56 +941,6 @@ BOOL DRIVER_GetDriverName( LPCWSTR device, LPWSTR driver, DWORD size )
}
-/***********************************************************************
- * GdiConvertToDevmodeW (GDI32.@)
- */
-DEVMODEW * WINAPI GdiConvertToDevmodeW(const DEVMODEA *dmA)
-{
- DEVMODEW *dmW;
- WORD dmW_size, dmA_size;
-
- dmA_size = dmA->dmSize;
-
- /* this is the minimal dmSize that XP accepts */
- if (dmA_size < FIELD_OFFSET(DEVMODEA, dmFields))
- return NULL;
-
- if (dmA_size > sizeof(DEVMODEA))
- dmA_size = sizeof(DEVMODEA);
-
- dmW_size = dmA_size + CCHDEVICENAME;
- if (dmA_size >= FIELD_OFFSET(DEVMODEA, dmFormName) + CCHFORMNAME)
- dmW_size += CCHFORMNAME;
-
- dmW = HeapAlloc(GetProcessHeap(), 0, dmW_size + dmA->dmDriverExtra);
- if (!dmW) return NULL;
-
- MultiByteToWideChar(CP_ACP, 0, (const char*) dmA->dmDeviceName, -1,
- dmW->dmDeviceName, CCHDEVICENAME);
- /* copy slightly more, to avoid long computations */
- memcpy(&dmW->dmSpecVersion, &dmA->dmSpecVersion, dmA_size - CCHDEVICENAME);
-
- if (dmA_size >= FIELD_OFFSET(DEVMODEA, dmFormName) + CCHFORMNAME)
- {
- if (dmA->dmFields & DM_FORMNAME)
- MultiByteToWideChar(CP_ACP, 0, (const char*) dmA->dmFormName, -1,
- dmW->dmFormName, CCHFORMNAME);
- else
- dmW->dmFormName[0] = 0;
-
- if (dmA_size > FIELD_OFFSET(DEVMODEA, dmLogPixels))
- memcpy(&dmW->dmLogPixels, &dmA->dmLogPixels, dmA_size - FIELD_OFFSET(DEVMODEA, dmLogPixels));
- }
-
- if (dmA->dmDriverExtra)
- memcpy((char *)dmW + dmW_size, (const char *)dmA + dmA_size, dmA->dmDriverExtra);
-
- dmW->dmSize = dmW_size;
-
- return dmW;
-}
-
-
/*****************************************************************************
* @ [GDI32.100]
*
diff --git a/dlls/gdi32/gdidc.c b/dlls/gdi32/gdidc.c
index 4dc0db42571..0f9c8ede8c9 100644
--- a/dlls/gdi32/gdidc.c
+++ b/dlls/gdi32/gdidc.c
@@ -97,6 +97,55 @@ HDC WINAPI CreateICW( const WCHAR *driver, const WCHAR *device, const WCHAR *out
return CreateDCW( driver, device, output, init_data );
}
+/***********************************************************************
+ * GdiConvertToDevmodeW (GDI32.@)
+ */
+DEVMODEW *WINAPI GdiConvertToDevmodeW( const DEVMODEA *dmA )
+{
+ DEVMODEW *dmW;
+ WORD dmW_size, dmA_size;
+
+ dmA_size = dmA->dmSize;
+
+ /* this is the minimal dmSize that XP accepts */
+ if (dmA_size < FIELD_OFFSET(DEVMODEA, dmFields))
+ return NULL;
+
+ if (dmA_size > sizeof(DEVMODEA))
+ dmA_size = sizeof(DEVMODEA);
+
+ dmW_size = dmA_size + CCHDEVICENAME;
+ if (dmA_size >= FIELD_OFFSET(DEVMODEA, dmFormName) + CCHFORMNAME)
+ dmW_size += CCHFORMNAME;
+
+ dmW = HeapAlloc( GetProcessHeap(), 0, dmW_size + dmA->dmDriverExtra );
+ if (!dmW) return NULL;
+
+ MultiByteToWideChar( CP_ACP, 0, (const char*) dmA->dmDeviceName, -1,
+ dmW->dmDeviceName, CCHDEVICENAME );
+ /* copy slightly more, to avoid long computations */
+ memcpy( &dmW->dmSpecVersion, &dmA->dmSpecVersion, dmA_size - CCHDEVICENAME );
+
+ if (dmA_size >= FIELD_OFFSET(DEVMODEA, dmFormName) + CCHFORMNAME)
+ {
+ if (dmA->dmFields & DM_FORMNAME)
+ MultiByteToWideChar( CP_ACP, 0, (const char*) dmA->dmFormName, -1,
+ dmW->dmFormName, CCHFORMNAME );
+ else
+ dmW->dmFormName[0] = 0;
+
+ if (dmA_size > FIELD_OFFSET(DEVMODEA, dmLogPixels))
+ memcpy( &dmW->dmLogPixels, &dmA->dmLogPixels, dmA_size - FIELD_OFFSET(DEVMODEA, dmLogPixels) );
+ }
+
+ if (dmA->dmDriverExtra)
+ memcpy( (char *)dmW + dmW_size, (const char *)dmA + dmA_size, dmA->dmDriverExtra );
+
+ dmW->dmSize = dmW_size;
+
+ return dmW;
+}
+
/***********************************************************************
* DeleteDC (GDI32.@)
*/
More information about the wine-cvs
mailing list