Piotr Caban : wineps: Use default devmode if winspool returns fake data.
Module: wine Branch: master Commit: 9f578f6a30c37cf550c3085136ea17020106ea91 URL: https://gitlab.winehq.org/wine/wine/-/commit/9f578f6a30c37cf550c3085136ea170... Author: Piotr Caban <piotr(a)codeweavers.com> Date: Tue May 16 15:49:09 2023 +0200 wineps: Use default devmode if winspool returns fake data. 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) );
participants (1)
-
Alexandre Julliard