mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-11-07 07:26:13 -05:00
gnu: icu4c: Add patch for VTIMEZONE bug.
Icedove@115 does not properly work without this patch. See: https://bugzilla.mozilla.org/show_bug.cgi?id=1843007 * gnu/packages/icu4c.scm (icu4c-73)[source]: Use patch. * gnu/packages/patches/icu4c-icu-22132-fix-vtimezone.patch: New file. * gnu/local.mk (dist_patch_DATA): Register patch. Change-Id: Ie64d1e33afedbaedbaafaeb607a201eb671ac7bd Change-Id: I6d753eacc7daac5663128b20a550044d0fd0ddb7
This commit is contained in:
parent
71f0676a29
commit
15a96bd6e9
3 changed files with 35 additions and 2 deletions
|
@ -1511,6 +1511,7 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/icecat-use-system-wide-dir.patch \
|
||||
%D%/packages/patches/icedtea-7-hotspot-aarch64-use-c++98.patch \
|
||||
%D%/packages/patches/icedtea-7-hotspot-pointer-comparison.patch \
|
||||
%D%/packages/patches/icu4c-icu-22132-fix-vtimezone.patch \
|
||||
%D%/packages/patches/icu4c-fix-TestHebrewCalendarInTemporalLeapYear.patch \
|
||||
%D%/packages/patches/id3lib-CVE-2007-4460.patch \
|
||||
%D%/packages/patches/id3lib-UTF16-writing-bug.patch \
|
||||
|
|
|
@ -126,8 +126,9 @@ (define-public icu4c-73
|
|||
(base32
|
||||
"0iccpdvc0kvpww5a31k9gjkqigyz016i7v80r9zamd34w4fl6mx4"))
|
||||
(patches
|
||||
(cons
|
||||
(search-patch
|
||||
(append
|
||||
(search-patches
|
||||
"icu4c-icu-22132-fix-vtimezone.patch"
|
||||
"icu4c-fix-TestHebrewCalendarInTemporalLeapYear.patch")
|
||||
(origin-patches (package-source icu4c))))))))
|
||||
|
||||
|
|
31
gnu/packages/patches/icu4c-icu-22132-fix-vtimezone.patch
Normal file
31
gnu/packages/patches/icu4c-icu-22132-fix-vtimezone.patch
Normal file
|
@ -0,0 +1,31 @@
|
|||
Source: https://unicode-org.atlassian.net/browse/ICU-22132?focusedCommentId=166752
|
||||
Author: Sean Burke
|
||||
License:
|
||||
Fixes: https://bugzilla.mozilla.org/show_bug.cgi?id=1843007
|
||||
|
||||
diff --git a/icu4c/source/i18n/vtzone.cpp b/icu4c/source/i18n/vtzone.cpp
|
||||
index 3035106701..5e738e11fa 100644
|
||||
--- a/source/i18n/vtzone.cpp
|
||||
+++ b/source/i18n/vtzone.cpp
|
||||
@@ -1735,14 +1735,14 @@ VTimeZone::write(VTZWriter& writer, UErrorCode& status) const {
|
||||
}
|
||||
}
|
||||
} 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);
|
||||
}
|
Loading…
Reference in a new issue