gdiplus: Fix cleanup after errors in GdipCloneImage.
This commit is contained in:
parent
bf04d3fa69
commit
8b154a590e
|
@ -746,12 +746,14 @@ GpStatus WINGDIPAPI GdipCloneImage(GpImage *image, GpImage **cloneImage)
|
||||||
GdipBitmapUnlockBits((GpBitmap*)*cloneImage, &lockeddata_dst);
|
GdipBitmapUnlockBits((GpBitmap*)*cloneImage, &lockeddata_dst);
|
||||||
}
|
}
|
||||||
|
|
||||||
GdipBitmapUnlockBits(bitmap, &lockeddata_src);
|
if (stat != Ok)
|
||||||
|
GdipDisposeImage(*cloneImage);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
GdipBitmapUnlockBits(bitmap, &lockeddata_src);
|
||||||
|
|
||||||
if (stat != Ok)
|
if (stat != Ok)
|
||||||
{
|
{
|
||||||
GdipDisposeImage(*cloneImage);
|
|
||||||
*cloneImage = NULL;
|
*cloneImage = NULL;
|
||||||
}
|
}
|
||||||
else memcpy(&(*cloneImage)->format, &image->format, sizeof(GUID));
|
else memcpy(&(*cloneImage)->format, &image->format, sizeof(GUID));
|
||||||
|
|
Loading…
Reference in New Issue