Huw Davies : winspool: Keep track of any supplied devmode.

Alexandre Julliard julliard at winehq.org
Fri Mar 30 11:27:07 CDT 2012


Module: wine
Branch: master
Commit: b74c9a64728353b98e68376b12f92abd6cb1c999
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=b74c9a64728353b98e68376b12f92abd6cb1c999

Author: Huw Davies <huw at 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




More information about the wine-cvs mailing list