summaryrefslogtreecommitdiff
path: root/libre/icu-compat/ICU-22132.patch
diff options
context:
space:
mode:
Diffstat (limited to 'libre/icu-compat/ICU-22132.patch')
-rw-r--r--libre/icu-compat/ICU-22132.patch25
1 files changed, 25 insertions, 0 deletions
diff --git a/libre/icu-compat/ICU-22132.patch b/libre/icu-compat/ICU-22132.patch
new file mode 100644
index 000000000..3b93c920f
--- /dev/null
+++ b/libre/icu-compat/ICU-22132.patch
@@ -0,0 +1,25 @@
+diff -u a/i18n/vtzone.cpp a/i18n/vtzone.cpp
+--- a/i18n/vtzone.cpp 2023-07-14 09:05:38.000000000 +0100
++++ b/i18n/vtzone.cpp 2023-07-14 09:05:38.000000000 +0100
+@@ -1735,14 +1735,14 @@
+ }
+ }
+ } else {
+- UnicodeString icutzprop;
+- UVector customProps(nullptr, uhash_compareUnicodeString, status);
++ UVector customProps(uprv_deleteUObject, uhash_compareUnicodeString, status);
+ if (olsonzid.length() > 0 && icutzver.length() > 0) {
+- icutzprop.append(olsonzid);
+- icutzprop.append(u'[');
+- icutzprop.append(icutzver);
+- icutzprop.append(u']');
+- customProps.addElement(&icutzprop, status);
++ LocalPointer<UnicodeString> icutzprop(new UnicodeString(ICU_TZINFO_PROP), status);
++ icutzprop->append(olsonzid);
++ icutzprop->append(u'[');
++ icutzprop->append(icutzver);
++ icutzprop->append(u']');
++ customProps.adoptElement(icutzprop.orphan(), status);
+ }
+ writeZone(writer, *tz, &customProps, status);
+ } \ No newline at end of file