Module: wine Branch: master Commit: ef08f69efc50bf39925c9fb7be3739e99c935e91 URL: http://source.winehq.org/git/wine.git/?a=commit;h=ef08f69efc50bf39925c9fb7be...
Author: Huw Davies huw@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)) {