Huw Davies : wineps: Always initialize the Windows page type.
Alexandre Julliard
julliard at winehq.org
Wed Apr 16 12:11:39 CDT 2014
Module: wine
Branch: master
Commit: ef08f69efc50bf39925c9fb7be3739e99c935e91
URL: http://source.winehq.org/git/wine.git/?a=commit;h=ef08f69efc50bf39925c9fb7be3739e99c935e91
Author: Huw Davies <huw at codeweavers.com>
Date: Wed Apr 16 11:58:01 2014 +0100
wineps: Always initialize the Windows page type.
---
dlls/wineps.drv/ppd.c | 36 ++++++++++++++++++++----------------
1 file changed, 20 insertions(+), 16 deletions(-)
diff --git a/dlls/wineps.drv/ppd.c b/dlls/wineps.drv/ppd.c
index adb6a21..520355a 100644
--- a/dlls/wineps.drv/ppd.c
+++ b/dlls/wineps.drv/ppd.c
@@ -816,26 +816,13 @@ PPD *PSDRV_ParsePPD( const WCHAR *fname, HANDLE printer )
tuple.value = NULL;
}
- else if(!strcmp("*PageSize", tuple.key)) {
+ else if(!strcmp("*PageSize", tuple.key))
+ {
page = get_pagesize( ppd, tuple.option, TRUE );
if(!page->Name) {
- int i;
-
page->Name = tuple.option;
tuple.option = NULL;
-
- for(i = 0; PageTrans[i].PSName; i++) {
- if(!strcmp(PageTrans[i].PSName, page->Name)) { /* case ? */
- page->WinPage = PageTrans[i].WinPage;
- break;
- }
- }
- if(!page->WinPage) {
- TRACE("Can't find Windows page type for '%s' - using %u\n",
- page->Name, UserPageType);
- page->WinPage = UserPageType++;
- }
}
if(!page->FullName) {
if(tuple.opttrans) {
@@ -851,7 +838,24 @@ PPD *PSDRV_ParsePPD( const WCHAR *fname, HANDLE printer )
page->InvocationString = tuple.value;
tuple.value = NULL;
}
- }
+ if (!page->WinPage)
+ {
+ int i;
+ for (i = 0; PageTrans[i].PSName; i++)
+ {
+ if (!strcmp( PageTrans[i].PSName, page->Name ))
+ {
+ page->WinPage = PageTrans[i].WinPage;
+ break;
+ }
+ }
+ if (!page->WinPage)
+ {
+ TRACE( "Can't find Windows page type for %s - using %u\n", debugstr_a(page->Name), UserPageType );
+ page->WinPage = UserPageType++;
+ }
+ }
+ }
else if(!strcmp("*DefaultPageSize", tuple.key))
{
More information about the wine-cvs
mailing list