Dmitry Timoshkov : winspool: Add support for level 1 printer info to GetPrinter.

Alexandre Julliard julliard at winehq.org
Mon Sep 30 16:19:06 CDT 2019


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

Author: Dmitry Timoshkov <dmitry at baikal.ru>
Date:   Fri Sep 27 13:22:18 2019 +0800

winspool: Add support for level 1 printer info to GetPrinter.

Signed-off-by: Dmitry Timoshkov <dmitry at baikal.ru>
Signed-off-by: Huw Davies <huw at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/winspool.drv/info.c | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/dlls/winspool.drv/info.c b/dlls/winspool.drv/info.c
index d7e2211102..1ab5e43aef 100644
--- a/dlls/winspool.drv/info.c
+++ b/dlls/winspool.drv/info.c
@@ -4435,6 +4435,24 @@ BOOL WINAPI GetPrinterW(HANDLE hPrinter, DWORD Level, LPBYTE pPrinter,
     }
 
     switch(Level) {
+    case 1:
+      {
+        PRINTER_INFO_1W *pi1 = (PRINTER_INFO_1W *)pPrinter;
+
+        size = sizeof(PRINTER_INFO_1W);
+        if (size <= cbBuf) {
+            ptr = pPrinter + size;
+            cbBuf -= size;
+            memset(pPrinter, 0, size);
+        } else {
+            pi1 = NULL;
+            cbBuf = 0;
+        }
+        ret = WINSPOOL_GetPrinter_1(hkeyPrinter, pi1, ptr, cbBuf, &needed);
+        needed += size;
+        break;
+      }
+
     case 2:
       {
         PRINTER_INFO_2W *pi2 = (PRINTER_INFO_2W *)pPrinter;




More information about the wine-cvs mailing list