Signed-off-by: Dmitry Timoshkov <dmitry(a)baikal.ru> --- 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; -- 2.20.1