diff -r 2edacbf5d3f9 -r 7197e789b953 imagehandlingutilities/thumbnailmanager/plugins/image/src/thumbnailimagedecoder.cpp --- a/imagehandlingutilities/thumbnailmanager/plugins/image/src/thumbnailimagedecoder.cpp Fri Mar 19 09:35:30 2010 +0200 +++ b/imagehandlingutilities/thumbnailmanager/plugins/image/src/thumbnailimagedecoder.cpp Fri Apr 16 15:16:16 2010 +0300 @@ -166,7 +166,6 @@ //Size in both x and y dimension must be non-zero, positive value TSize loadSize( iOriginalSize) ; - if(iOriginalSize.iHeight < iSize.iHeight || iOriginalSize.iWidth < iSize.iWidth ) { loadSize = iOriginalSize; @@ -225,7 +224,13 @@ "CThumbnailImageDecoder::DecodeL() - loadSize = (%d,%d) reduction = 1/%d ", loadSize.iWidth, loadSize.iHeight, reductionFactor ); } - User::LeaveIfError( iBitmap->Create( loadSize, aDisplayMode )); + TInt err = iBitmap->Create( loadSize, aDisplayMode ); + if (err != KErrNone) + { + delete iBitmap; + iBitmap = NULL; + User::Leave(err); + } iDecoder->Convert( &iStatus, * iBitmap ); while ( iStatus == KErrUnderflow )