blob: e31f02d637d138b4f5a1c8f0dc22509c29550342 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
diff --git a/intl/icu/source/i18n/vtzone.cpp b/intl/icu/source/i18n/vtzone.cpp
--- a/intl/icu/source/i18n/vtzone.cpp
+++ b/intl/icu/source/i18n/vtzone.cpp
@@ -1735,14 +1735,17 @@ VTimeZone::write(VTZWriter& writer, UErr
}
}
} 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);
+ if (U_FAILURE(status)) {
+ return;
+ }
+ icutzprop->append(olsonzid);
+ icutzprop->append(u'[');
+ icutzprop->append(icutzver);
+ icutzprop->append(u']');
+ customProps.adoptElement(icutzprop.orphan(), status);
}
writeZone(writer, *tz, &customProps, status);
}
|