summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--external/icu/icu-ubsan.patch.06
1 files changed, 4 insertions, 2 deletions
diff --git a/external/icu/icu-ubsan.patch.0 b/external/icu/icu-ubsan.patch.0
index e5d8ed6b3514..25efb5fec728 100644
--- a/external/icu/icu-ubsan.patch.0
+++ b/external/icu/icu-ubsan.patch.0
@@ -51,15 +51,17 @@
if (fRB->fLookAheadHardBreak) {
--- source/common/ubidiimp.h
+++ source/common/ubidiimp.h
-@@ -198,7 +198,7 @@
+@@ -198,8 +198,8 @@
/* in a Run, logicalStart will get this bit set if the run level is odd */
#define INDEX_ODD_BIT (1UL<<31)
-#define MAKE_INDEX_ODD_PAIR(index, level) ((index)|((int32_t)(level)<<31))
+-#define ADD_ODD_BIT_FROM_LEVEL(x, level) ((x)|=((int32_t)(level)<<31))
+#define MAKE_INDEX_ODD_PAIR(index, level) ((index)|((uint32_t)(level)<<31))
- #define ADD_ODD_BIT_FROM_LEVEL(x, level) ((x)|=((int32_t)(level)<<31))
++#define ADD_ODD_BIT_FROM_LEVEL(x, level) ((x)|=((uint32_t)(level)<<31))
#define REMOVE_ODD_BIT(x) ((x)&=~INDEX_ODD_BIT)
+ #define GET_INDEX(x) ((x)&~INDEX_ODD_BIT)
--- source/common/ucharstriebuilder.cpp
+++ source/common/ucharstriebuilder.cpp
@@ -285,7 +285,7 @@