summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2017-09-22 13:12:40 +0100
committerCaolán McNamara <caolanm@redhat.com>2017-09-22 18:09:07 +0200
commita395698d3df12d1deaec25b31ae02e019a281867 (patch)
treec08f136e4e3f4aec208473fb92237889a74fc6b5
parentdc99e5e9ba7eb5a4782d889675ad7d14129e37d8 (diff)
ofz#3466 avoid oom
Change-Id: I79f7390dda9c087ae4bc5af9855b72e888e284a1 Reviewed-on: https://gerrit.libreoffice.org/42641 Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
-rw-r--r--sw/source/filter/ww8/ww8par.cxx5
1 files changed, 4 insertions, 1 deletions
diff --git a/sw/source/filter/ww8/ww8par.cxx b/sw/source/filter/ww8/ww8par.cxx
index 1de95d3a4067..f1b2ef2d9e28 100644
--- a/sw/source/filter/ww8/ww8par.cxx
+++ b/sw/source/filter/ww8/ww8par.cxx
@@ -3985,7 +3985,10 @@ bool SwWW8ImplReader::ReadText(WW8_CP nStartCp, WW8_CP nTextLen, ManTypes nType)
sal_uInt8 nDropLines = 0;
SwCharFormat* pNewSwCharFormat = nullptr;
const SwCharFormat* pFormat = nullptr;
- m_pStrm->Seek(m_xSBase->WW8Cp2Fc(nStartCp + nCpOfs, &m_bIsUnicode));
+
+ bool bValidPos = checkSeek(*m_pStrm, m_xSBase->WW8Cp2Fc(nStartCp + nCpOfs, &m_bIsUnicode));
+ if (!bValidPos)
+ return false;
WW8_CP l = nStartCp;
const WW8_CP nMaxPossible = WW8_CP_MAX-nStartCp;