From: Piotr Caban <piotr(a)codeweavers.com> Fixes regression caused by aa3699dd59c9. --- dlls/wineps.drv/init.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/dlls/wineps.drv/init.c b/dlls/wineps.drv/init.c index ec015e1c871..78a72303708 100644 --- a/dlls/wineps.drv/init.c +++ b/dlls/wineps.drv/init.c @@ -644,14 +644,16 @@ static PSDRV_DEVMODE *get_devmode( HANDLE printer, const WCHAR *name, BOOL *is_d *is_default = FALSE; - if (dm) + if (dm && (dm->dmPublic.dmFields & DefaultDevmode.dmPublic.dmFields) == + DefaultDevmode.dmPublic.dmFields) { TRACE( "Retrieved devmode from winspool\n" ); return dm; } TRACE( "Using default devmode\n" ); - dm = HeapAlloc( PSDRV_Heap, 0, size ); + if (!dm) + dm = HeapAlloc( PSDRV_Heap, 0, size ); if (dm) { memcpy( dm, &DefaultDevmode, min(sizeof(DefaultDevmode), size) ); -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/2840