[PATCH] user32: free the correct dce (Coverity)
Marcus Meissner
marcus at jet.franken.de
Fri Aug 17 14:23:38 CDT 2012
dce_to_free is probably better here. CID 714107
Also set dce=NULL to avoid returning a just freed dce.
---
dlls/user32/painting.c | 8 +++++---
1 files changed, 5 insertions(+), 3 deletions(-)
diff --git a/dlls/user32/painting.c b/dlls/user32/painting.c
index 5a3614c..dcf615d 100644
--- a/dlls/user32/painting.c
+++ b/dlls/user32/painting.c
@@ -314,9 +314,11 @@ static struct dce *get_window_dce( HWND hwnd )
if (dce_to_free)
{
- SetDCHook( dce->hdc, NULL, 0 );
- DeleteDC( dce->hdc );
- HeapFree( GetProcessHeap(), 0, dce );
+ SetDCHook( dce_to_free->hdc, NULL, 0 );
+ DeleteDC( dce_to_free->hdc );
+ HeapFree( GetProcessHeap(), 0, dce_to_free );
+ if (dce_to_free == dce)
+ dce = NULL;
}
}
return dce;
--
1.7.3.4
More information about the wine-patches
mailing list