all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Jonathan Brielmaier via Guix-patches via <guix-patches@gnu.org>
To: 67849@debbugs.gnu.org
Cc: Jonathan Brielmaier <jonathan.brielmaier@web.de>
Subject: [bug#67849] [PATCH 1/3] gnu: icu4c: Add patch for VTIMEZONE bug.
Date: Sun, 28 Apr 2024 21:55:15 +0200	[thread overview]
Message-ID: <75512c64bcd6cfe20a0dd38b2334e1f06a6f7e58.1714333675.git.jonathan.brielmaier@web.de> (raw)
In-Reply-To: <f6c2d3cf226581d2711af56aca62b840bb26e736.1702728928.git.jonathan.brielmaier@web.de>

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
---
 gnu/local.mk                                  |  1 +
 gnu/packages/icu4c.scm                        |  5 +--
 .../icu4c-icu-22132-fix-vtimezone.patch       | 31 +++++++++++++++++++
 3 files changed, 35 insertions(+), 2 deletions(-)
 create mode 100644 gnu/packages/patches/icu4c-icu-22132-fix-vtimezone.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 42961e60b2..f368eae54f 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1478,6 +1478,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			\
diff --git a/gnu/packages/icu4c.scm b/gnu/packages/icu4c.scm
index 0dfe63b20a..19dfc8c4eb 100644
--- a/gnu/packages/icu4c.scm
+++ b/gnu/packages/icu4c.scm
@@ -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))))))))

diff --git a/gnu/packages/patches/icu4c-icu-22132-fix-vtimezone.patch b/gnu/packages/patches/icu4c-icu-22132-fix-vtimezone.patch
new file mode 100644
index 0000000000..4fe520318a
--- /dev/null
+++ b/gnu/packages/patches/icu4c-icu-22132-fix-vtimezone.patch
@@ -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);
+     }

base-commit: 9f183c3627a006e8fd3bb9708448bc05a6204e6d
--
2.41.0





  parent reply	other threads:[~2024-04-28 19:56 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-12-16 12:17 [bug#67849] [PATCH] WIP: gnu: icedove: Update to 115.5.2 Jonathan Brielmaier via Guix-patches via
2023-12-16 12:29 ` Jonathan Brielmaier via Guix-patches via
2023-12-17 22:03   ` Maxim Cournoyer
2023-12-18 17:33     ` Jonathan Brielmaier via Guix-patches via
2023-12-19 16:39       ` Maxim Cournoyer
2024-04-28 19:55 ` Jonathan Brielmaier via Guix-patches via [this message]
2024-04-28 19:55   ` [bug#67849] [PATCH 2/3] gnu: icedove: Update to 115.10.1 Jonathan Brielmaier via Guix-patches via
2024-04-28 19:55   ` [bug#67849] [PATCH 3/3] gnu: icedove-wayland: Use icedove-minimal instead of icedove Jonathan Brielmaier via Guix-patches via

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=75512c64bcd6cfe20a0dd38b2334e1f06a6f7e58.1714333675.git.jonathan.brielmaier@web.de \
    --to=guix-patches@gnu.org \
    --cc=67849@debbugs.gnu.org \
    --cc=jonathan.brielmaier@web.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.