Huw Davies : wineps: Set the printer's devmode using SetPrinter.
Alexandre Julliard
julliard at winehq.org
Wed Apr 11 12:56:47 CDT 2012
Module: wine
Branch: master
Commit: 43cffa0888d643d77f11eedfd14ad4ebeae8a642
URL: http://source.winehq.org/git/wine.git/?a=commit;h=43cffa0888d643d77f11eedfd14ad4ebeae8a642
Author: Huw Davies <huw at codeweavers.com>
Date: Wed Apr 11 12:36:20 2012 +0100
wineps: Set the printer's devmode using SetPrinter.
---
dlls/wineps.drv/init.c | 12 +++++++++---
1 files changed, 9 insertions(+), 3 deletions(-)
diff --git a/dlls/wineps.drv/init.c b/dlls/wineps.drv/init.c
index cc950e3..4af6ca9 100644
--- a/dlls/wineps.drv/init.c
+++ b/dlls/wineps.drv/init.c
@@ -113,7 +113,6 @@ static const LOGFONTA DefaultLogFont = {
DEFAULT_QUALITY, FIXED_PITCH | FF_MODERN, ""
};
-static const CHAR default_devmodeA[] = "Default DevMode";
static const struct gdi_dc_funcs psdrv_funcs;
/*********************************************************************
@@ -610,6 +609,14 @@ static PSDRV_DEVMODEA *get_devmode( HANDLE printer, const char *nameA, BOOL *is_
return dm;
}
+static BOOL set_devmode( HANDLE printer, PSDRV_DEVMODEA *dm )
+{
+ PRINTER_INFO_9A info;
+ info.pDevMode = &dm->dmPublic;
+
+ return SetPrinterA( printer, 9, (BYTE *)&info, 0 );
+}
+
static struct list printer_list = LIST_INIT( printer_list );
/**********************************************************************
@@ -761,8 +768,7 @@ PRINTERINFO *PSDRV_FindPrinterInfo(LPCWSTR name)
PSDRV_MergeDevmodes(pi->Devmode, &dm, pi);
}
- SetPrinterDataExA(hPrinter, NULL, default_devmodeA, REG_BINARY,
- (LPBYTE)pi->Devmode, sizeof(DefaultDevmode));
+ set_devmode( hPrinter, pi->Devmode );
}
if(pi->ppd->DefaultPageSize) { /* We'll let the ppd override the devmode */
More information about the wine-cvs
mailing list