filter/source/msfilter/msdffimp.cxx | 26 ++++++++++++++++++++++---- sd/qa/unit/data/ppt/pass/hang-11.ppt |binary sd/qa/unit/data/ppt/pass/hang-12.ppt |binary 3 files changed, 22 insertions(+), 4 deletions(-)
New commits: commit a50be4ba133d2a92af37dd7b78b70377a05d716d Author: Caolán McNamara <caol...@redhat.com> Date: Thu Aug 27 15:59:46 2015 +0100 check returns of SeekToEndOfRecord Change-Id: Ia593dd0e2239a97f17bb03f005d22028da482445 (cherry picked from commit d400f155fdc3867ad4a067c2bf85588fc0fbb2a2) Reviewed-on: https://gerrit.libreoffice.org/18096 Reviewed-by: David Tardon <dtar...@redhat.com> Tested-by: David Tardon <dtar...@redhat.com> diff --git a/filter/source/msfilter/msdffimp.cxx b/filter/source/msfilter/msdffimp.cxx index ba0aae0..09458f8 100644 --- a/filter/source/msfilter/msdffimp.cxx +++ b/filter/source/msfilter/msdffimp.cxx @@ -3253,12 +3253,19 @@ bool SvxMSDffManager::SeekToRec( SvStream& rSt, sal_uInt16 nRecId, sal_uLong nMa if ( pRecHd != NULL ) *pRecHd = aHd; else - aHd.SeekToBegOfRecord( rSt ); + { + bool bSeekSuccess = aHd.SeekToBegOfRecord(rSt); + if (!bSeekSuccess) + { + bRet = false; + break; + } + } } } if ( !bRet ) { - bool bSeekSuccess = aHd.SeekToEndOfRecord( rSt ); + bool bSeekSuccess = aHd.SeekToEndOfRecord(rSt); if (!bSeekSuccess) break; } @@ -3287,11 +3294,22 @@ bool SvxMSDffManager::SeekToRec2( sal_uInt16 nRecId1, sal_uInt16 nRecId2, sal_uL if ( pRecHd ) *pRecHd = aHd; else - aHd.SeekToBegOfRecord( rStCtrl ); + { + bool bSeekSuccess = aHd.SeekToBegOfRecord(rStCtrl); + if (!bSeekSuccess) + { + bRet = false; + break; + } + } } } if ( !bRet ) - aHd.SeekToEndOfRecord( rStCtrl ); + { + bool bSeekSuccess = aHd.SeekToEndOfRecord(rStCtrl); + if (!bSeekSuccess) + break; + } } while ( rStCtrl.good() && rStCtrl.Tell() < nMaxFilePos && !bRet ); if ( !bRet ) diff --git a/sd/qa/unit/data/ppt/pass/hang-11.ppt b/sd/qa/unit/data/ppt/pass/hang-11.ppt new file mode 100644 index 0000000..2d9ef18 Binary files /dev/null and b/sd/qa/unit/data/ppt/pass/hang-11.ppt differ diff --git a/sd/qa/unit/data/ppt/pass/hang-12.ppt b/sd/qa/unit/data/ppt/pass/hang-12.ppt new file mode 100644 index 0000000..921481c Binary files /dev/null and b/sd/qa/unit/data/ppt/pass/hang-12.ppt differ
_______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits