svx/source/gallery2/codec.cxx | 49 ++-------------------------------------- svx/source/gallery2/galmisc.cxx | 7 ----- 2 files changed, 4 insertions(+), 52 deletions(-)
New commits: commit 6d0a1664d3b0365a0f243669fb2862288a316580 Author: Caolán McNamara <caolan.mcnam...@collabora.com> AuthorDate: Mon Nov 4 11:11:07 2024 +0000 Commit: Caolán McNamara <caolan.mcnam...@collabora.com> CommitDate: Mon Nov 4 13:47:59 2024 +0100 delete useless parts of GalleryCodec::Read no point reading this to just to discard it later the only places reading this are just opening, using and close the streams afterwards, so the need to even skip over this data doesn't seem to arise. Change-Id: Ieb2498f458534770c167bbbfb3a4792162238986 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176004 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnam...@collabora.com> diff --git a/svx/source/gallery2/codec.cxx b/svx/source/gallery2/codec.cxx index 5c549bd80173..19e2a92cb548 100644 --- a/svx/source/gallery2/codec.cxx +++ b/svx/source/gallery2/codec.cxx @@ -18,6 +18,7 @@ */ +#include <sal/log.hxx> #include <tools/stream.hxx> #include <tools/zcodec.hxx> #include "codec.hxx" @@ -84,56 +85,12 @@ void GalleryCodec::Read( SvStream& rStmToRead ) if( !IsCoded( rStm, nVersion ) ) return; - sal_uInt32 nCompressedSize, nUnCompressedSize; - - rStm.SeekRel( 6 ); - rStm.ReadUInt32( nUnCompressedSize ).ReadUInt32( nCompressedSize ); + rStm.SeekRel( 14 ); // decompress if( 1 == nVersion ) { - std::unique_ptr<sal_uInt8[]> pCompressedBuffer(new sal_uInt8[ nCompressedSize ]); - rStm.ReadBytes(pCompressedBuffer.get(), nCompressedSize); - sal_uInt8* pInBuf = pCompressedBuffer.get(); - std::unique_ptr<sal_uInt8[]> pOutBuf(new sal_uInt8[ nUnCompressedSize ]); - sal_uInt8* pTmpBuf = pOutBuf.get(); - sal_uInt8* pLast = pOutBuf.get() + nUnCompressedSize - 1; - size_t nIndex = 0, nCountByte, nRunByte; - bool bEndDecoding = false; - - do - { - nCountByte = *pInBuf++; - - if ( !nCountByte ) - { - nRunByte = *pInBuf++; - - if ( nRunByte > 2 ) - { - // filling absolutely - memcpy( &pTmpBuf[ nIndex ], pInBuf, nRunByte ); - pInBuf += nRunByte; - nIndex += nRunByte; - - // note WORD alignment - if ( nRunByte & 1 ) - pInBuf++; - } - else if ( nRunByte == 1 ) // End of the image - bEndDecoding = true; - } - else - { - const sal_uInt8 cVal = *pInBuf++; - - memset( &pTmpBuf[ nIndex ], cVal, nCountByte ); - nIndex += nCountByte; - } - } - while ( !bEndDecoding && ( pTmpBuf <= pLast ) ); - - rStmToRead.WriteBytes(pOutBuf.get(), nUnCompressedSize); + SAL_WARN("svx", "staroffice binary file formats are no longer supported inside the gallery!"); } else if( 2 == nVersion ) { diff --git a/svx/source/gallery2/galmisc.cxx b/svx/source/gallery2/galmisc.cxx index 4d3ef2d5a619..6e80276c3aa6 100644 --- a/svx/source/gallery2/galmisc.cxx +++ b/svx/source/gallery2/galmisc.cxx @@ -86,12 +86,7 @@ bool GallerySvDrawImport( SvStream& rIStm, SdrModel& rModel ) aCodec.Read( aMemStm ); aMemStm.Seek( 0 ); - if( 1 == nVersion ) - { - OSL_FAIL( "staroffice binary file formats are no longer supported inside the gallery!" ); - bRet = false; - } - else if( 2 == nVersion ) + if ( 2 == nVersion ) { // recall to read as XML bRet = GallerySvDrawImport( aMemStm, rModel );