Module: wine Branch: master Commit: 51b873b3ca03074698ab027f503acd7c1940ad80 URL: http://source.winehq.org/git/wine.git/?a=commit;h=51b873b3ca03074698ab027f50...
Author: Vincent Povirk vincent@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;