diff options
author | Caolán McNamara <caolanm@redhat.com> | 2015-09-29 10:19:14 +0100 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2015-09-29 11:10:32 +0100 |
commit | acf83365fcea4b8471f087cf88a548e77b4b26e5 (patch) | |
tree | 34ae8fb34f5ba84a35f5a8f1b3db83d0dbc327c8 | |
parent | 1faa4dd2fb27543395b1241cb4adc18ce58895e2 (diff) |
coverity#1325067 Resource leak
Change-Id: I1db24c81a2698ff49dd2441ddd1bc94a1a3e6f58
-rw-r--r-- | vcl/source/gdi/dibtools.cxx | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/vcl/source/gdi/dibtools.cxx b/vcl/source/gdi/dibtools.cxx index ebab16d20a16..dbd69d896a8f 100644 --- a/vcl/source/gdi/dibtools.cxx +++ b/vcl/source/gdi/dibtools.cxx @@ -748,8 +748,13 @@ bool ImplReadDIBBody( SvStream& rIStm, Bitmap& rBmp, Bitmap* pBmpAlpha, sal_uLon BitmapPalette aDummyPal; Bitmap aNewBmp(aSizePixel, nBitCount, &aDummyPal); BitmapWriteAccess* pAcc = aNewBmp.AcquireWriteAccess(); - if (!pAcc || pAcc->Width() != aHeader.nWidth || pAcc->Height() != aHeader.nHeight) + if (!pAcc) return false; + if (pAcc->Width() != aHeader.nWidth || pAcc->Height() != aHeader.nHeight) + { + Bitmap::ReleaseAccess(pAcc); + return false; + } Bitmap aNewBmpAlpha; BitmapWriteAccess* pAccAlpha = 0; bool bAlphaPossible(pBmpAlpha && aHeader.nBitCount == 32); |