Piotr Caban : gdi32: Abort printing if DeleteDC is called before EndDoc.
Module: wine Branch: master Commit: 0e976ca5444c699517f3ad7e84c7e0468b4adcbc URL: https://gitlab.winehq.org/wine/wine/-/commit/0e976ca5444c699517f3ad7e84c7e04... Author: Piotr Caban <piotr(a)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 ); }
participants (1)
-
Alexandre Julliard