summaryrefslogtreecommitdiff
path: root/filter
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2015-08-27 15:59:46 +0100
committerCaolán McNamara <caolanm@redhat.com>2015-08-27 16:43:18 +0100
commitd400f155fdc3867ad4a067c2bf85588fc0fbb2a2 (patch)
tree427b8eac8281d1ab439cebdebe9d1641e3c4743a /filter
parentb1922eecb55b233de3e6abaaa644fe9f313cf0f1 (diff)
check returns of SeekToEndOfRecord
Change-Id: Ia593dd0e2239a97f17bb03f005d22028da482445
Diffstat (limited to 'filter')
-rw-r--r--filter/source/msfilter/msdffimp.cxx26
1 files changed, 22 insertions, 4 deletions
diff --git a/filter/source/msfilter/msdffimp.cxx b/filter/source/msfilter/msdffimp.cxx
index f61869e6d1e9..7cfde35fa546 100644
--- a/filter/source/msfilter/msdffimp.cxx
+++ b/filter/source/msfilter/msdffimp.cxx
@@ -3264,12 +3264,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;
}
@@ -3298,11 +3305,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 )