Module: wine
Branch: master
Commit: 51b873b3ca03074698ab027f503acd7c1940ad80
URL: http://source.winehq.org/git/wine.git/?a=commit;h=51b873b3ca03074698ab027f5…
Author: Vincent Povirk <vincent(a)codeweavers.com>
Date: Fri Jan 3 14:00:10 2014 -0600
gdiplus: Mark the Graphics object as busy before freeing it.
---
dlls/gdiplus/graphics.c | 6 ++++++
1 files changed, 6 insertions(+), 0 deletions(-)
diff --git a/dlls/gdiplus/graphics.c b/dlls/gdiplus/graphics.c
index 122581d..7f892f6 100644
--- a/dlls/gdiplus/graphics.c
+++ b/dlls/gdiplus/graphics.c
@@ -2409,6 +2409,12 @@ GpStatus WINGDIPAPI GdipDeleteGraphics(GpGraphics *graphics)
}
GdipDeleteRegion(graphics->clip);
+
+ /* Native returns ObjectBusy on the second free, instead of crashing as we'd
+ * do otherwise, but we can't have that in the test suite because it means
+ * accessing freed memory. */
+ graphics->busy = TRUE;
+
GdipFree(graphics);
return Ok;