diff options
author | Caolán McNamara <caolanm@redhat.com> | 2018-01-10 10:10:12 +0000 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2018-01-10 17:20:34 +0100 |
commit | b0486259aa2a1a839f5e46522b73ae9f051e20eb (patch) | |
tree | 6b2c98df81aa2a566dec06a30754bf8b785cc22c /sw | |
parent | bcf85c9c1a3f2794da5efae9b57f40e91d2ff843 (diff) |
ofz: Integer-overflow
Change-Id: Iad8ebd0861a74399f6bb4a18aecf0de735a60b61
Reviewed-on: https://gerrit.libreoffice.org/47694
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'sw')
-rw-r--r-- | sw/source/filter/html/svxcss1.cxx | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/sw/source/filter/html/svxcss1.cxx b/sw/source/filter/html/svxcss1.cxx index 37c0a88df992..e442644271f2 100644 --- a/sw/source/filter/html/svxcss1.cxx +++ b/sw/source/filter/html/svxcss1.cxx @@ -2019,11 +2019,15 @@ static void ParseCSS1_text_indent( const CSS1Expression *pExpr, break; case CSS1_PIXLENGTH: { - long nPWidth = (long)pExpr->GetNumber(); - long nPHeight = 0; - SvxCSS1Parser::PixelToTwip( nPWidth, nPHeight ); - nIndent = (short)nPWidth; - bSet = true; + double fWidth = pExpr->GetNumber(); + if (fWidth < SAL_MAX_INT32/2.0 && fWidth > SAL_MIN_INT32/2.0) + { + long nPWidth = (long)fWidth; + long nPHeight = 0; + SvxCSS1Parser::PixelToTwip( nPWidth, nPHeight ); + nIndent = (short)nPWidth; + bSet = true; + } } break; case CSS1_PERCENTAGE: |