summaryrefslogtreecommitdiff
path: root/sc/source/core/data/column3.cxx
diff options
context:
space:
mode:
authorEike Rathke <erack@redhat.com>2017-10-27 15:27:07 +0200
committerEike Rathke <erack@redhat.com>2017-10-27 18:29:44 +0200
commitca214981553eb21a4276d07c76db0c37c234a11c (patch)
tree4a013e2909410bb5918478e031685a35df30d571 /sc/source/core/data/column3.cxx
parentc1a47f1a51360f4afed094c1f87790fafb95e103 (diff)
Handle decimalSeparatorAlternative in ScColumn::ParseString(), tdf#81671
Change-Id: I9f708b28ee5fdb23217e75386a64ab86dacfd3c4
Diffstat (limited to 'sc/source/core/data/column3.cxx')
-rw-r--r--sc/source/core/data/column3.cxx6
1 files changed, 4 insertions, 2 deletions
diff --git a/sc/source/core/data/column3.cxx b/sc/source/core/data/column3.cxx
index 001d8d320485..646210a8e679 100644
--- a/sc/source/core/data/column3.cxx
+++ b/sc/source/core/data/column3.cxx
@@ -1806,13 +1806,15 @@ bool ScColumn::ParseString(
const LocaleDataItem2& aLocaleItem = pLocale->getLocaleItem();
const OUString& rDecSep = aLocaleItem.decimalSeparator;
const OUString& rGroupSep = aLocaleItem.thousandSeparator;
- if (rDecSep.getLength() != 1 || rGroupSep.getLength() != 1)
+ const OUString& rDecSepAlt = aLocaleItem.decimalSeparatorAlternative;
+ if (rDecSep.getLength() != 1 || rGroupSep.getLength() != 1 || rDecSepAlt.getLength() > 1)
break;
sal_Unicode dsep = rDecSep[0];
sal_Unicode gsep = rGroupSep[0];
+ sal_Unicode dsepa = rDecSepAlt.toChar();
- if (!ScStringUtil::parseSimpleNumber(rString, dsep, gsep, nVal))
+ if (!ScStringUtil::parseSimpleNumber(rString, dsep, gsep, dsepa, nVal))
break;
rCell.set(nVal);