summaryrefslogtreecommitdiff
path: root/Build/source/libs/icu/icu-src/source/i18n/decimalformatpattern.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Build/source/libs/icu/icu-src/source/i18n/decimalformatpattern.cpp')
-rw-r--r--Build/source/libs/icu/icu-src/source/i18n/decimalformatpattern.cpp10
1 files changed, 6 insertions, 4 deletions
diff --git a/Build/source/libs/icu/icu-src/source/i18n/decimalformatpattern.cpp b/Build/source/libs/icu/icu-src/source/i18n/decimalformatpattern.cpp
index b07bcdd3ccf..4ee5e334411 100644
--- a/Build/source/libs/icu/icu-src/source/i18n/decimalformatpattern.cpp
+++ b/Build/source/libs/icu/icu-src/source/i18n/decimalformatpattern.cpp
@@ -50,10 +50,12 @@ static void syntaxError(const UnicodeString& pattern,
parseError.preContext[stop-start] = 0;
//for post-context
- start = pos+1;
- stop = ((pos+U_PARSE_CONTEXT_LEN)<=pattern.length()) ? (pos+(U_PARSE_CONTEXT_LEN-1)) :
- pattern.length();
- pattern.extract(start,stop-start,parseError.postContext,0);
+ start = pattern.moveIndex32(pos, 1);
+ stop = pos + U_PARSE_CONTEXT_LEN - 1;
+ if (stop > pattern.length()) {
+ stop = pattern.length();
+ }
+ pattern.extract(start, stop - start, parseError.postContext, 0);
//null terminate the buffer
parseError.postContext[stop-start]= 0;
}