From: Tim Clem <tclem(a)codeweavers.com> The GdiConvertToDevmodeW call can crash if the incoming DEVMODEA has nonsense values. --- dlls/winspool.drv/info.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dlls/winspool.drv/info.c b/dlls/winspool.drv/info.c index 22422f7e966..c1835695af4 100644 --- a/dlls/winspool.drv/info.c +++ b/dlls/winspool.drv/info.c @@ -1895,7 +1895,7 @@ LONG WINAPI DocumentPropertiesA(HWND hwnd, HANDLE printer, char *device_name, DE outputW = HeapAlloc(GetProcessHeap(), 0, ret); } - if (input) inputW = GdiConvertToDevmodeW(input); + if (input && (mode & DM_IN_BUFFER)) inputW = GdiConvertToDevmodeW(input); ret = DocumentPropertiesW(hwnd, printer, device, outputW, inputW, mode); -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/1366