download.lst | 4 +- filter/source/msfilter/svdfppt.cxx | 4 +- include/filter/msfilter/svdfppt.hxx | 2 - sd/source/filter/ppt/pptin.cxx | 63 ++++++++++++++++++------------------ 4 files changed, 37 insertions(+), 36 deletions(-)
New commits: commit 3b302b98795310befdae4a4f925ab9921682b79c Author: Caolán McNamara <[email protected]> AuthorDate: Sun Jun 25 20:04:39 2023 +0100 Commit: Caolán McNamara <[email protected]> CommitDate: Mon Jun 26 09:57:14 2023 +0200 upgrade libtiff to 4.5.1 Change-Id: Ia07f368a371930f655bdc3495e76295dad740d30 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153570 Tested-by: Jenkins Reviewed-by: Caolán McNamara <[email protected]> diff --git a/download.lst b/download.lst index 16c58a1c13c9..0ca3d6dfa325 100644 --- a/download.lst +++ b/download.lst @@ -453,8 +453,8 @@ LIBPNG_TARBALL := libpng-1.6.39.tar.xz # three static lines # so that git cherry-pick # will not run into conflicts -LIBTIFF_SHA256SUM := dafac979c5e7b6c650025569c5a4e720995ba5f17bc17e6276d1f12427be267c -LIBTIFF_TARBALL := tiff-4.5.0rc3.tar.xz +LIBTIFF_SHA256SUM := 3c080867114c26edab3129644a63b708028a90514b7fe3126e38e11d24f9f88a +LIBTIFF_TARBALL := tiff-4.5.1.tar.xz # three static lines # so that git cherry-pick # will not run into conflicts commit b6589ad8c7a5aed5ae13cf8bf8482ceba19a2067 Author: Caolán McNamara <[email protected]> AuthorDate: Sun Jun 25 19:58:11 2023 +0100 Commit: Caolán McNamara <[email protected]> CommitDate: Mon Jun 26 09:57:06 2023 +0200 ofz: Use-of-uninitialized-value Change-Id: Ia064835f3fee71e9a177b2ab37f66e3fd2a94fce Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153569 Tested-by: Jenkins Reviewed-by: Caolán McNamara <[email protected]> diff --git a/filter/source/msfilter/svdfppt.cxx b/filter/source/msfilter/svdfppt.cxx index 400b9716127f..422d34e411bb 100644 --- a/filter/source/msfilter/svdfppt.cxx +++ b/filter/source/msfilter/svdfppt.cxx @@ -216,7 +216,7 @@ sal_uInt16 PptSlidePersistList::FindPage(sal_uInt32 nId) const return PPTSLIDEPERSIST_ENTRY_NOTFOUND; } -SvStream& ReadPptInteractiveInfoAtom( SvStream& rIn, PptInteractiveInfoAtom& rAtom ) +bool ReadPptInteractiveInfoAtom( SvStream& rIn, PptInteractiveInfoAtom& rAtom ) { rIn.ReadUInt32( rAtom.nSoundRef ) .ReadUInt32( rAtom.nExHyperlinkId ) @@ -228,7 +228,7 @@ SvStream& ReadPptInteractiveInfoAtom( SvStream& rIn, PptInteractiveInfoAtom& rAt .ReadUChar( rAtom.nUnknown1 ) .ReadUChar( rAtom.nUnknown2 ) .ReadUChar( rAtom.nUnknown3 ); - return rIn; + return rIn.good(); } SvStream& ReadPptExOleObjAtom( SvStream& rIn, PptExOleObjAtom& rAtom ) diff --git a/include/filter/msfilter/svdfppt.hxx b/include/filter/msfilter/svdfppt.hxx index 0fad50bf993f..ae5f600a7fa2 100644 --- a/include/filter/msfilter/svdfppt.hxx +++ b/include/filter/msfilter/svdfppt.hxx @@ -130,7 +130,7 @@ struct MSFILTER_DLLPUBLIC PptInteractiveInfoAtom public: - MSFILTER_DLLPUBLIC friend SvStream& ReadPptInteractiveInfoAtom( SvStream& rIn, PptInteractiveInfoAtom& rAtom ); + MSFILTER_DLLPUBLIC friend bool ReadPptInteractiveInfoAtom( SvStream& rIn, PptInteractiveInfoAtom& rAtom ); }; enum PptPageKind { PPT_MASTERPAGE, PPT_SLIDEPAGE, PPT_NOTEPAGE }; diff --git a/sd/source/filter/ppt/pptin.cxx b/sd/source/filter/ppt/pptin.cxx index 53d28a3c46ea..3eaebfd1892b 100644 --- a/sd/source/filter/ppt/pptin.cxx +++ b/sd/source/filter/ppt/pptin.cxx @@ -2686,44 +2686,45 @@ rtl::Reference<SdrObject> ImplSdPPTImport::ProcessObj( SvStream& rSt, DffObjData if ( SeekToRec( rSt, PPT_PST_InteractiveInfoAtom, nHdRecEnd, &aHdInteractiveInfoAtom ) ) { PptInteractiveInfoAtom aInteractiveInfoAtom; - ReadPptInteractiveInfoAtom( rSt, aInteractiveInfoAtom ); - - // interactive object - SdAnimationInfo* pInfo = SdDrawDocument::GetShapeUserData(*pObj, true); - - FillSdAnimationInfo(pInfo, aInteractiveInfoAtom, aMacroName); - if ( aInteractiveInfoAtom.nAction == 6 ) // Sj -> media action + if (ReadPptInteractiveInfoAtom(rSt, aInteractiveInfoAtom)) { - rHdClientData.SeekToContent( rStCtrl ); - DffRecordHeader aObjRefAtomHd; - if ( SeekToRec( rSt, PPT_PST_ExObjRefAtom, nHdRecEnd, &aObjRefAtomHd ) ) + // interactive object + SdAnimationInfo* pInfo = SdDrawDocument::GetShapeUserData(*pObj, true); + + FillSdAnimationInfo(pInfo, aInteractiveInfoAtom, aMacroName); + if ( aInteractiveInfoAtom.nAction == 6 ) // Sj -> media action { - sal_uInt32 nRef; - rSt.ReadUInt32( nRef ); - OUString aMediaURL( ReadMedia( nRef ) ); - if ( aMediaURL.isEmpty() ) - aMediaURL = ReadSound( nRef ); - if ( !aMediaURL.isEmpty() ) + rHdClientData.SeekToContent( rStCtrl ); + DffRecordHeader aObjRefAtomHd; + if ( SeekToRec( rSt, PPT_PST_ExObjRefAtom, nHdRecEnd, &aObjRefAtomHd ) ) { - rtl::Reference<SdrMediaObj> pMediaObj = new SdrMediaObj( - pObj->getSdrModelFromSdrObject(), - pObj->GetSnapRect()); - pMediaObj->SetMergedItemSet( pObj->GetMergedItemSet() ); - - //--remove object from maAnimations list and add the new object instead - Ppt97AnimationPtr pAnimation; + sal_uInt32 nRef; + rSt.ReadUInt32( nRef ); + OUString aMediaURL( ReadMedia( nRef ) ); + if ( aMediaURL.isEmpty() ) + aMediaURL = ReadSound( nRef ); + if ( !aMediaURL.isEmpty() ) { - tAnimationMap::iterator aFound = maAnimations.find( pObj.get() ); - if( aFound != maAnimations.end() ) + rtl::Reference<SdrMediaObj> pMediaObj = new SdrMediaObj( + pObj->getSdrModelFromSdrObject(), + pObj->GetSnapRect()); + pMediaObj->SetMergedItemSet( pObj->GetMergedItemSet() ); + + //--remove object from maAnimations list and add the new object instead + Ppt97AnimationPtr pAnimation; { - pAnimation = (*aFound).second; - maAnimations.erase(aFound); + tAnimationMap::iterator aFound = maAnimations.find( pObj.get() ); + if( aFound != maAnimations.end() ) + { + pAnimation = (*aFound).second; + maAnimations.erase(aFound); + } + maAnimations[pMediaObj.get()] = pAnimation; } - maAnimations[pMediaObj.get()] = pAnimation; - } - pObj = pMediaObj; // SJ: hoping that pObj is not inserted in any list - pMediaObj->setURL( aMediaURL, ""/*TODO?*/ ); + pObj = pMediaObj; // SJ: hoping that pObj is not inserted in any list + pMediaObj->setURL( aMediaURL, ""/*TODO?*/ ); + } } } }
