diff options
author | Caolán McNamara <caolanm@redhat.com> | 2015-08-27 15:59:46 +0100 |
---|---|---|
committer | David Tardon <dtardon@redhat.com> | 2015-08-28 10:45:02 +0000 |
commit | a50be4ba133d2a92af37dd7b78b70377a05d716d (patch) | |
tree | a22af608d7074e7712bd40d8b73f725138270fa6 /filter | |
parent | a6ea269296089b43dd5810f418e8e1239f30a565 (diff) |
check returns of SeekToEndOfRecord
Change-Id: Ia593dd0e2239a97f17bb03f005d22028da482445
(cherry picked from commit d400f155fdc3867ad4a067c2bf85588fc0fbb2a2)
Reviewed-on: https://gerrit.libreoffice.org/18096
Reviewed-by: David Tardon <dtardon@redhat.com>
Tested-by: David Tardon <dtardon@redhat.com>
Diffstat (limited to 'filter')
-rw-r--r-- | filter/source/msfilter/msdffimp.cxx | 26 |
1 files changed, 22 insertions, 4 deletions
diff --git a/filter/source/msfilter/msdffimp.cxx b/filter/source/msfilter/msdffimp.cxx index ba0aae06a853..09458f8c4def 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 ) |