LCL: Don't try to stream an empty image. Issue #21406

git-svn-id: trunk@35676 -
This commit is contained in:
juha 2012-03-03 16:37:28 +00:00
parent aaa6a65283
commit 0d85bc3fdd

View File

@ -166,14 +166,16 @@ procedure TFPImageBitmap.WriteStream(AStream: TMemoryStream);
var var
IntfImg: TLazIntfImage; IntfImg: TLazIntfImage;
ImgWriter: TFPCustomImageWriter; ImgWriter: TFPCustomImageWriter;
RawImg: PRawImage;
begin begin
// write image to temporary stream // write image to temporary stream
ImgWriter := nil; ImgWriter := nil;
RawImg:=GetRawImagePtr;
if RawImg^.DataSize > 0 then begin
IntfImg := TLazIntfImage.Create(0,0,[]); IntfImg := TLazIntfImage.Create(0,0,[]);
try try
ImgWriter := GetWriterClass.Create; ImgWriter := GetWriterClass.Create;
IntfImg.SetRawImage(GetRawImagePtr^, False); IntfImg.SetRawImage(RawImg^, False);
InitializeWriter(IntfImg, ImgWriter); InitializeWriter(IntfImg, ImgWriter);
IntfImg.SaveToStream(AStream, ImgWriter); IntfImg.SaveToStream(AStream, ImgWriter);
FinalizeWriter(ImgWriter); FinalizeWriter(ImgWriter);
@ -181,5 +183,6 @@ begin
IntfImg.Free; IntfImg.Free;
ImgWriter.Free; ImgWriter.Free;
end; end;
end;
end; end;