LCL: optimize fix for mem-leak in TCustomIcon.AssignImage / Temporary mask is not freed. Issue #0035562

git-svn-id: trunk@61201 -
This commit is contained in:
martin 2019-05-11 11:26:33 +00:00
parent 5f6aa28d51
commit 057100e30e

View File

@ -444,15 +444,10 @@ begin
and RawImage_FromBitmap(RawMsk, ASource.MaskHandle, ASource.MaskHandle) and RawImage_FromBitmap(RawMsk, ASource.MaskHandle, ASource.MaskHandle)
then begin then begin
NewImage.FImage.MaskSize := RawMsk.MaskSize; NewImage.FImage.MaskSize := RawMsk.MaskSize;
if NewImage.FImage.MaskSize > 0 NewImage.FImage.Mask := RawMsk.Mask;
then begin //// prevent cleanup
NewImage.FImage.Mask := GetMem(NewImage.FImage.MaskSize); RawMsk.MaskSize := 0;
Move(RawMsk.Mask^, NewImage.FImage.Mask^, NewImage.FImage.MaskSize); RawMsk.Mask := nil;
//// prevent cleanup
//RawMsk.MaskSize := 0;
//RawMsk.Mask := nil;
end;
RawMsk.FreeData; RawMsk.FreeData;
end end
else begin else begin