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

Caolán McNamara caolanm at redhat.com
Fri Aug 28 03:58:40 PDT 2015


 filter/source/msfilter/msdffimp.cxx  |    6 ++++--
 sd/qa/unit/data/ppt/pass/hang-13.ppt |binary
 2 files changed, 4 insertions(+), 2 deletions(-)

New commits:
commit 6e0029ee903ebcf97b331908d537f40fde512478
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Thu Aug 27 20:16:58 2015 +0100

    check seek
    
    Change-Id: I358758999bb918e73cdee2224e575e72c2131453
    (cherry picked from commit 0c713e45f9831073e34777f50abf9b5801f08ed9)
    Reviewed-on: https://gerrit.libreoffice.org/18098
    Reviewed-by: David Tardon <dtardon at redhat.com>
    Tested-by: David Tardon <dtardon at redhat.com>

diff --git a/filter/source/msfilter/msdffimp.cxx b/filter/source/msfilter/msdffimp.cxx
index 09458f8..5e9a34c 100644
--- a/filter/source/msfilter/msdffimp.cxx
+++ b/filter/source/msfilter/msdffimp.cxx
@@ -399,7 +399,8 @@ SvStream& ReadSvxMSDffSolverContainer( SvStream& rIn, SvxMSDffSolverContainer& r
     if ( aHd.nRecType == DFF_msofbtSolverContainer )
     {
         DffRecordHeader aCRule;
-        while ( ( rIn.GetError() == 0 ) && ( rIn.Tell() < aHd.GetRecEndFilePos() ) )
+        auto nEndPos = DffPropSet::SanitizeEndPos(rIn, aHd.GetRecEndFilePos());
+        while ( ( rIn.GetError() == 0 ) && ( rIn.Tell() < nEndPos ) )
         {
             ReadDffRecordHeader( rIn, aCRule );
             if ( aCRule.nRecType == DFF_msofbtConnectorRule )
@@ -408,7 +409,8 @@ SvStream& ReadSvxMSDffSolverContainer( SvStream& rIn, SvxMSDffSolverContainer& r
                 rIn >> *pRule;
                 rContainer.aCList.push_back( pRule );
             }
-            aCRule.SeekToEndOfRecord( rIn );
+            if (!aCRule.SeekToEndOfRecord(rIn))
+                break;
         }
     }
     return rIn;
diff --git a/sd/qa/unit/data/ppt/pass/hang-13.ppt b/sd/qa/unit/data/ppt/pass/hang-13.ppt
new file mode 100644
index 0000000..04fbdc5
Binary files /dev/null and b/sd/qa/unit/data/ppt/pass/hang-13.ppt differ


More information about the Libreoffice-commits mailing list