diff options
author | David Tardon <dtardon@redhat.com> | 2017-09-16 10:40:01 +0200 |
---|---|---|
committer | David Tardon <dtardon@redhat.com> | 2017-09-16 10:40:01 +0200 |
commit | d02012b1c9ce8dfa22a80790cde2f5d2bdd66455 (patch) | |
tree | a5ddeae03ceafa2ad2fce549c790210766a9caba | |
parent | cae8723485ba227951cd9961a2d5ecfbcae08acc (diff) |
cid#1417723 sanitize loop bound
Change-Id: Ic7596aa673a2cb7e702566b246437b42526173ac
-rw-r--r-- | src/lib/FHParser.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/lib/FHParser.cpp b/src/lib/FHParser.cpp index 1a52cd9..c0d7c2a 100644 --- a/src/lib/FHParser.cpp +++ b/src/lib/FHParser.cpp @@ -1311,6 +1311,8 @@ void libfreehand::FHParser::readLinePat(librevenge::RVNGInputStream *input, libf } input->seek(8, librevenge::RVNG_SEEK_CUR); FHLinePattern pattern; + if (numStrokes > getRemainingLength(input) / 4) + numStrokes = getRemainingLength(input) / 4; pattern.m_dashes.resize(size_t(numStrokes)); for (unsigned short i=0; i<numStrokes; ++i) pattern.m_dashes[size_t(i)]=_readCoordinate(input); |