Module: wine Branch: master Commit: 0e976ca5444c699517f3ad7e84c7e0468b4adcbc URL: https://gitlab.winehq.org/wine/wine/-/commit/0e976ca5444c699517f3ad7e84c7e04...
Author: Piotr Caban piotr@codeweavers.com Date: Mon May 22 18:52:26 2023 +0200
gdi32: Abort printing if DeleteDC is called before EndDoc.
---
dlls/gdi32/dc.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/dlls/gdi32/dc.c b/dlls/gdi32/dc.c index e7f2d8526d1..5ae7cc653d1 100644 --- a/dlls/gdi32/dc.c +++ b/dlls/gdi32/dc.c @@ -479,7 +479,12 @@ BOOL WINAPI DeleteDC( HDC hdc )
if (is_meta_dc( hdc )) return METADC_DeleteDC( hdc ); if (!(dc_attr = get_dc_attr( hdc ))) return FALSE; - if (dc_attr->print) delete_print_dc( dc_attr ); + if (dc_attr->print) + { + if (dc_attr->emf) + AbortDoc( hdc ); + delete_print_dc( dc_attr ); + } if (dc_attr->emf) EMFDC_DeleteDC( dc_attr ); return NtGdiDeleteObjectApp( hdc ); }