diff options
author | arpit1912 <arpitbandejiya@gmail.com> | 2021-03-19 16:10:16 +0530 |
---|---|---|
committer | Andreas Heinisch <andreas.heinisch@yahoo.de> | 2021-03-20 11:57:48 +0100 |
commit | 54b3ada2e5ef9dcbc452509a7bbe39f0920572e2 (patch) | |
tree | b28e5f7a1ff4d53267cd527f02a1c4cd3701ba75 /basic | |
parent | eb482427bfd2013692ca36611a302fbf21132b4b (diff) |
tdf#141050 Accept CCur with negative strings
the ImpStringToCurrency now increment the pointer on finding a '+' or '-' in sbxcurr.cxx file
Change-Id: I4a1093ae0b4e52b6a61dc412bd5e7b95b1309e7a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112734
Tested-by: Jenkins
Reviewed-by: Andreas Heinisch <andreas.heinisch@yahoo.de>
Diffstat (limited to 'basic')
-rw-r--r-- | basic/qa/basic_coverage/test_ccur_method.vb | 16 | ||||
-rw-r--r-- | basic/source/sbx/sbxcurr.cxx | 2 |
2 files changed, 12 insertions, 6 deletions
diff --git a/basic/qa/basic_coverage/test_ccur_method.vb b/basic/qa/basic_coverage/test_ccur_method.vb index b84ddafd5713..e4eef652441f 100644 --- a/basic/qa/basic_coverage/test_ccur_method.vb +++ b/basic/qa/basic_coverage/test_ccur_method.vb @@ -7,10 +7,16 @@ ' Function doUnitTest as Integer + + doUnitTest = 0 + ' CCUR - If (CCur("100") <> 100) Then - doUnitTest = 0 - Else - doUnitTest = 1 - End If + if (CCur("100") <> 100) Then Exit Function + ' tdf#141050 - passing a number with + sign + if (CCur("+100") <> 100) Then Exit Function + ' tdf#141050 - passing a number with - sign + if (CCur("-100") <> -100) Then Exit Function + + doUnitTest = 1 + End Function diff --git a/basic/source/sbx/sbxcurr.cxx b/basic/source/sbx/sbxcurr.cxx index 50b530cda193..416229afbc95 100644 --- a/basic/source/sbx/sbxcurr.cxx +++ b/basic/source/sbx/sbxcurr.cxx @@ -106,7 +106,7 @@ static sal_Int64 ImpStringToCurrency( const OUString &rStr ) OUStringBuffer sNormalisedNumString( sTmp.getLength() + nFractDigit ); if ( *p == '-' || *p == '+' ) - sNormalisedNumString.append( *p ); + sNormalisedNumString.append( *p++ ); while ( *p >= '0' && *p <= '9' ) { |