tools/source/zcodec/zcodec.cxx | 2 +- vcl/qa/cppunit/graphicfilter/data/bmp/fail/nodict-compress.bmp |binary vcl/source/gdi/dibtools.cxx | 5 +++-- 3 files changed, 4 insertions(+), 3 deletions(-)
New commits: commit 92fcd775ef67df1c96a417151a60a94530379b8f Author: Caolán McNamara <caol...@redhat.com> Date: Wed Mar 1 11:12:45 2017 +0000 ofz: Z_NEED_DICT is unsupported Change-Id: Ib0945d5a4606915aff9ee3019203caaf2a3cc7c5 (cherry picked from commit aacaacc16938b030a1341d8dbaf56c6a2efeb1dc) Reviewed-on: https://gerrit.libreoffice.org/34744 Tested-by: Jenkins <c...@libreoffice.org> Reviewed-by: Michael Stahl <mst...@redhat.com> diff --git a/tools/source/zcodec/zcodec.cxx b/tools/source/zcodec/zcodec.cxx index fcf8c21..6be21d6f 100644 --- a/tools/source/zcodec/zcodec.cxx +++ b/tools/source/zcodec/zcodec.cxx @@ -220,7 +220,7 @@ long ZCodec::Read( SvStream& rIStm, sal_uInt8* pData, sal_uIntPtr nSize ) } err = mbStatus ? inflate(PZSTREAM, Z_NO_FLUSH) : Z_ERRNO; - if ( err < 0 ) + if (err < 0 || err == Z_NEED_DICT) { // Accept Z_BUF_ERROR as EAGAIN or EWOULDBLOCK. mbStatus = (err == Z_BUF_ERROR); diff --git a/vcl/qa/cppunit/graphicfilter/data/bmp/fail/nodict-compress.bmp b/vcl/qa/cppunit/graphicfilter/data/bmp/fail/nodict-compress.bmp new file mode 100644 index 0000000..a75d6eb Binary files /dev/null and b/vcl/qa/cppunit/graphicfilter/data/bmp/fail/nodict-compress.bmp differ diff --git a/vcl/source/gdi/dibtools.cxx b/vcl/source/gdi/dibtools.cxx index f45fa3d..c326632 100644 --- a/vcl/source/gdi/dibtools.cxx +++ b/vcl/source/gdi/dibtools.cxx @@ -854,7 +854,8 @@ bool ImplReadDIBBody( SvStream& rIStm, Bitmap& rBmp, AlphaMask* pBmpAlpha, sal_u // Seek behind the encoded block. There might have been bytes left or the codec might have read more than necessary. rIStm.Seek(nCodedSize + nCodedPos); } - else + + if (aData.empty()) { // add something so we can take address of the first element aData.resize(1); @@ -863,7 +864,7 @@ bool ImplReadDIBBody( SvStream& rIStm, Bitmap& rBmp, AlphaMask* pBmpAlpha, sal_u // set decoded bytes to memory stream, // from which we will read the bitmap data - pMemStm.reset( new SvMemoryStream); + pMemStm.reset(new SvMemoryStream); pIStm = pMemStm.get(); assert(!aData.empty()); pMemStm->SetBuffer( &aData.front(), nUncodedSize, nUncodedSize );
_______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits