diff options
-rw-r--r-- | sc/qa/unit/data/slk/pass/numfmt.slk | 2 | ||||
-rw-r--r-- | svl/source/numbers/zforscan.cxx | 19 |
2 files changed, 13 insertions, 8 deletions
diff --git a/sc/qa/unit/data/slk/pass/numfmt.slk b/sc/qa/unit/data/slk/pass/numfmt.slk new file mode 100644 index 000000000000..85ea7b65c8f2 --- /dev/null +++ b/sc/qa/unit/data/slk/pass/numfmt.slk @@ -0,0 +1,2 @@ + +P;P s 0 0
\ No newline at end of file diff --git a/svl/source/numbers/zforscan.cxx b/svl/source/numbers/zforscan.cxx index 13c0362e873f..5fe02e7f54c3 100644 --- a/svl/source/numbers/zforscan.cxx +++ b/svl/source/numbers/zforscan.cxx @@ -2412,17 +2412,20 @@ sal_Int32 ImpSvNumberformatScan::FinalScan( OUString& rString ) nTypeArray[i] = NF_SYMBOLTYPE_DIGIT; OUString& rStr = sStrArray[i]; i++; - nPos = nPos + sStrArray[i].getLength(); - nCounter++; - while (i < nAnzStrings && - sStrArray[i][0] == '0') + if (i < nAnzStrings) { - rStr += sStrArray[i]; nPos = nPos + sStrArray[i].getLength(); - nTypeArray[i] = NF_SYMBOLTYPE_EMPTY; - nAnzResStrings--; nCounter++; - i++; + while (i < nAnzStrings && + sStrArray[i][0] == '0') + { + rStr += sStrArray[i]; + nPos = nPos + sStrArray[i].getLength(); + nTypeArray[i] = NF_SYMBOLTYPE_EMPTY; + nAnzResStrings--; + nCounter++; + i++; + } } } else |