diff options
Diffstat (limited to 'external/icu')
-rw-r--r-- | external/icu/icu-ubsan.patch.0 | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/external/icu/icu-ubsan.patch.0 b/external/icu/icu-ubsan.patch.0 index 8a47242117c5..f16503eeb4ac 100644 --- a/external/icu/icu-ubsan.patch.0 +++ b/external/icu/icu-ubsan.patch.0 @@ -151,3 +151,13 @@ length(len), next(subNode) {} virtual UBool operator==(const Node &other) const; virtual int32_t markRightEdgesFirst(int32_t edgeNumber); +--- source/i18n/collationdatareader.cpp ++++ source/i18n/collationdatareader.cpp +@@ -419,6 +419,7 @@ + tailoring.data, ts, fastLatinPrimaries, UPRV_LENGTHOF(fastLatinPrimaries)); + if(options == ts.options && ts.variableTop != 0 && + reorderCodesLength == ts.reorderCodesLength && ++ reorderCodesLength != 0 && + uprv_memcmp(reorderCodes, ts.reorderCodes, reorderCodesLength * 4) == 0 && + fastLatinOptions == ts.fastLatinOptions && + (fastLatinOptions < 0 || |