Huw Davies : winspool: Keep track of any supplied devmode.
Module: wine Branch: master Commit: b74c9a64728353b98e68376b12f92abd6cb1c999 URL: http://source.winehq.org/git/wine.git/?a=commit;h=b74c9a64728353b98e68376b12... Author: Huw Davies <huw(a)codeweavers.com> Date: Fri Mar 30 14:39:42 2012 +0100 winspool: Keep track of any supplied devmode. --- dlls/winspool.drv/info.c | 5 +++++ 1 files changed, 5 insertions(+), 0 deletions(-) diff --git a/dlls/winspool.drv/info.c b/dlls/winspool.drv/info.c index 24e5a97..d832b4b 100644 --- a/dlls/winspool.drv/info.c +++ b/dlls/winspool.drv/info.c @@ -96,6 +96,7 @@ typedef struct { HANDLE backend_printer; jobqueue_t *queue; started_doc_t *doc; + DEVMODEW *devmode; } opened_printer_t; typedef struct { @@ -778,6 +779,7 @@ static void free_printer_entry( opened_printer_t *printer ) /* the queue is shared, so don't free that here */ HeapFree( GetProcessHeap(), 0, printer->printername ); HeapFree( GetProcessHeap(), 0, printer->name ); + HeapFree( GetProcessHeap(), 0, printer->devmode ); HeapFree( GetProcessHeap(), 0, printer ); } @@ -872,6 +874,9 @@ static HANDLE get_opened_printer_entry(LPWSTR name, LPPRINTER_DEFAULTSW pDefault goto end; } + if (pDefault && pDefault->pDevMode) + printer->devmode = dup_devmode( pDefault->pDevMode ); + if(queue) printer->queue = queue; else
participants (1)
-
Alexandre Julliard