[Libreoffice-commits] core.git: Branch 'libreoffice-4-4' - 2 commits - filter/source sd/qa

Caolán McNamara caolanm at redhat.com
Fri Aug 28 04:33:09 PDT 2015


 filter/source/msfilter/svdfppt.cxx  |   10 ++++++++--
 sd/qa/unit/data/ppt/pass/hang-6.ppt |binary
 sd/qa/unit/data/ppt/pass/hang-8.ppt |binary
 3 files changed, 8 insertions(+), 2 deletions(-)

New commits:
commit 9becbb6a1bf32ab3fa0afeaa35bcdd0a0cd33116
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Thu Aug 27 14:06:04 2015 +0100

    check stream state after read attempt
    
    Change-Id: Ie3836f2e95acab963634181a07565343501f00f8
    (cherry picked from commit 9a695e071020639926f8b038aba64eb016a1801a)
    Reviewed-on: https://gerrit.libreoffice.org/18079
    Reviewed-by: Michael Meeks <michael.meeks at collabora.com>
    Tested-by: Michael Meeks <michael.meeks at collabora.com>

diff --git a/filter/source/msfilter/svdfppt.cxx b/filter/source/msfilter/svdfppt.cxx
index 2eeb4b0..40c3349 100644
--- a/filter/source/msfilter/svdfppt.cxx
+++ b/filter/source/msfilter/svdfppt.cxx
@@ -5245,9 +5245,13 @@ void PPTStyleTextPropReader::Init( SvStream& rIn, SdrPowerPointImport& rMan, con
 
             PPTCharPropSet aCharPropSet( nCurrentPara );
             if ( bTextPropAtom )
+            {
                 ReadCharProps( rIn, aCharPropSet, aString, nCharCount, nCharAnzRead,
                                bTextPropAtom, nExtParaPos, aStyleTextProp9, nExtParaFlags,
                                nBuBlip, nHasAnm, nAnmScheme );
+                if (!rIn.good())
+                    break;
+            }
             else
                 nCharCount = nStringLen;
 
@@ -5314,7 +5318,7 @@ void PPTStyleTextPropReader::Init( SvStream& rIn, SdrPowerPointImport& rMan, con
                     break;
                 }
             }
-         }
+        }
         if ( !aCharPropList.empty() && ( aCharPropList.back()->mnParagraph != nCurrentPara ) )
         {
             PPTCharPropSet* pCharPropSet = new PPTCharPropSet( *aCharPropList.back(), nCurrentPara );
diff --git a/sd/qa/unit/data/ppt/pass/hang-8.ppt b/sd/qa/unit/data/ppt/pass/hang-8.ppt
new file mode 100644
index 0000000..0f52bd5
Binary files /dev/null and b/sd/qa/unit/data/ppt/pass/hang-8.ppt differ
commit ec08cc64c8bbf7ff9dcbd4f4e660c42a7885947b
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Thu Aug 27 13:49:00 2015 +0100

    check SeekToEndOfRecord for success
    
    Change-Id: I7413a4e9e491b65122eaadb38ad574161f1aa943
    (cherry picked from commit d417ffb7dd93306be7c89526a75acab53dbd8831)
    Reviewed-on: https://gerrit.libreoffice.org/18077
    Reviewed-by: Michael Meeks <michael.meeks at collabora.com>
    Tested-by: Michael Meeks <michael.meeks at collabora.com>

diff --git a/filter/source/msfilter/svdfppt.cxx b/filter/source/msfilter/svdfppt.cxx
index 8c41446..2eeb4b0 100644
--- a/filter/source/msfilter/svdfppt.cxx
+++ b/filter/source/msfilter/svdfppt.cxx
@@ -2869,7 +2869,9 @@ void SdrPowerPointImport::ImportPage( SdrPage* pRet, const PptSlidePersistEntry*
                                                         insertShapeId( nShapeId, pObj );
                                                 }
                                             }
-                                            aShapeHd.SeekToEndOfRecord( rStCtrl );
+                                            bool bSuccess = aShapeHd.SeekToEndOfRecord(rStCtrl);
+                                            if (!bSuccess)
+                                                break;
                                         }
                                     }
                                 }
diff --git a/sd/qa/unit/data/ppt/pass/hang-6.ppt b/sd/qa/unit/data/ppt/pass/hang-6.ppt
new file mode 100644
index 0000000..f5aa247
Binary files /dev/null and b/sd/qa/unit/data/ppt/pass/hang-6.ppt differ


More information about the Libreoffice-commits mailing list