summaryrefslogtreecommitdiff
path: root/hwpfilter
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2021-03-26 09:26:10 +0000
committerCaolán McNamara <caolanm@redhat.com>2021-03-26 11:51:21 +0100
commit5453c8b92727eebdd1edbd36cd72c7042128f610 (patch)
tree88af013f59d8f116ad918f3987e2a801c6d601fd /hwpfilter
parent216561c4a8f4731901dcc34805e7a66cccb79ee1 (diff)
ofz#32499 overflowing pos
Change-Id: I164537acbb4d4bcf7dee51a029ffb518a3687fda Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113150 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'hwpfilter')
-rw-r--r--hwpfilter/source/hiodev.cxx4
1 files changed, 2 insertions, 2 deletions
diff --git a/hwpfilter/source/hiodev.cxx b/hwpfilter/source/hiodev.cxx
index 56d4719e4302..a9bd14b57b11 100644
--- a/hwpfilter/source/hiodev.cxx
+++ b/hwpfilter/source/hiodev.cxx
@@ -337,7 +337,7 @@ size_t HMemIODev::readBlock(void *p, size_t size)
{
if (state())
return 0;
- if (length < pos + size)
+ if (size > length - pos)
size = length - pos;
memcpy(p, ptr + pos, size);
pos += size;
@@ -346,7 +346,7 @@ size_t HMemIODev::readBlock(void *p, size_t size)
size_t HMemIODev::skipBlock(size_t size)
{
- if (state() || length < pos + size)
+ if (state() || size > length - pos)
return 0;
pos += size;
return size;