Re: [Gdiplus 02/15] Implement GdipCreateRegion
Adam Petaccia wrote:
@@ -226,6 +277,11 @@ GpStatus WINGDIPAPI GdipSetEmpty(GpRegion*region)
if(!(calls++)) FIXME("not implemented\n"); + TRACE("%p\n", region); + + GdipDeleteRegion(region); + GdipCreateRegion(®ion); + region->node->type = RegionDataEmptyRect;
return NotImplemented; }
This can't work. You don't want to free the memory pointed to by region, simply free the nodes underneath it. Huw.
On Sat, 2008-07-19 at 12:20 +0100, Huw Davies wrote:
Adam Petaccia wrote:
@@ -226,6 +277,11 @@ GpStatus WINGDIPAPI GdipSetEmpty(GpRegion*region)
if(!(calls++)) FIXME("not implemented\n"); + TRACE("%p\n", region); + + GdipDeleteRegion(region); + GdipCreateRegion(®ion); + region->node->type = RegionDataEmptyRect;
return NotImplemented; }
This can't work.
You don't want to fre e the memory pointed to by region, simply free the nodes underneath it.
Very true. This would have also caused problems when checksumming is implemented. I'll resend a correct version shortly, along with some other fixes (gcov revealed some issues).
Huw.
Thanks, Adam
participants (2)
-
Adam Petaccia -
Huw Davies