diff options
Diffstat (limited to 'basic/source/sbx/sbxint.cxx')
-rw-r--r-- | basic/source/sbx/sbxint.cxx | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/basic/source/sbx/sbxint.cxx b/basic/source/sbx/sbxint.cxx index a28b810eb8c7..aac57b4fb303 100644 --- a/basic/source/sbx/sbxint.cxx +++ b/basic/source/sbx/sbxint.cxx @@ -24,6 +24,7 @@ #include <vcl/errcode.hxx> #include <basic/sberrors.hxx> #include "sbxconv.hxx" +#include "rtlproto.hxx" #include <rtl/math.hxx> @@ -158,7 +159,7 @@ start: { double d; SbxDataType t; - if( ImpScan( *p->pOUString, d, t, nullptr, true ) != ERRCODE_NONE ) + if( ImpScan( *p->pOUString, d, t, nullptr, !LibreOffice6FloatingPointMode() ) != ERRCODE_NONE ) nRes = 0; else if( !o3tl::convertsToAtMost(o3tl::roundAway(d), SbxMAXINT) ) { @@ -443,7 +444,7 @@ start: // Check if really 0 or invalid conversion double d; SbxDataType t; - if( ImpScan( *p->pOUString, d, t, nullptr, true ) != ERRCODE_NONE ) + if( ImpScan( *p->pOUString, d, t, nullptr, !LibreOffice6FloatingPointMode() ) != ERRCODE_NONE ) nRes = 0; else nRes = static_cast<sal_Int64>(d); @@ -704,7 +705,7 @@ start: // Check if really 0 or invalid conversion double d; SbxDataType t; - if( ImpScan( *p->pOUString, d, t, nullptr, true ) != ERRCODE_NONE ) + if( ImpScan( *p->pOUString, d, t, nullptr, !LibreOffice6FloatingPointMode() ) != ERRCODE_NONE ) nRes = 0; else if( !o3tl::convertsToAtMost(o3tl::roundAway(d), SAL_MAX_UINT64) ) { |