commit:     12625187c65c810e122282e5aec49748109708c3
Author:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
AuthorDate: Mon Jan  8 14:55:10 2018 +0000
Commit:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
CommitDate: Mon Jan  8 14:56:03 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=12625187

gnome-extra/gnome-calendar: fix compatibility with dev-libs/libical:0/3

Package-Manager: Portage-2.3.19, Repoman-2.3.6

 .../files/3.24.3-libical3-compat.patch             | 49 ++++++++++++++++++++++
 .../gnome-calendar/gnome-calendar-3.24.3.ebuild    |  3 +-
 2 files changed, 51 insertions(+), 1 deletion(-)

diff --git a/gnome-extra/gnome-calendar/files/3.24.3-libical3-compat.patch 
b/gnome-extra/gnome-calendar/files/3.24.3-libical3-compat.patch
new file mode 100644
index 00000000000..5d0160e9773
--- /dev/null
+++ b/gnome-extra/gnome-calendar/files/3.24.3-libical3-compat.patch
@@ -0,0 +1,49 @@
+From ad404c26ed22690d842a01df3e10a851a198a0b7 Mon Sep 17 00:00:00 2001
+From: Caio Marcelo de Oliveira Filho <[email protected]>
+Date: Wed, 15 Nov 2017 13:09:54 -0800
+Subject: [PATCH] utils: simplify gcal_dup_icaltime
+
+Instead of copying member by member, copy the entire struct contents.
+It works as before, but doesn't depend on the member names.
+
+This fixes compiling gnome-calendar with libical 3.0.0, since the
+struct icaltimetype had one of the members removed (is_utc).
+
+https://bugzilla.gnome.org/show_bug.cgi?id=790072
+---
+ src/gcal-utils.c | 19 +------------------
+ 1 file changed, 1 insertion(+), 18 deletions(-)
+
+diff --git a/src/gcal-utils.c b/src/gcal-utils.c
+index c80ba53a..4558f540 100644
+--- a/src/gcal-utils.c
++++ b/src/gcal-utils.c
+@@ -199,24 +199,7 @@ datetime_is_date (GDateTime *dt)
+ icaltimetype*
+ gcal_dup_icaltime (const icaltimetype *date)
+ {
+-  icaltimetype *new_date;
+-
+-  if (date == NULL)
+-    return NULL;
+-
+-  new_date= g_new (icaltimetype, 1);
+-  new_date->year = date->year;
+-  new_date->month = date->month;
+-  new_date->day = date->day;
+-  new_date->hour = date->hour;
+-  new_date->minute = date->minute;
+-  new_date->second = date->second;
+-  new_date->is_utc = date->is_utc;
+-  new_date->is_date = date->is_date;
+-  new_date->is_daylight = date->is_daylight;
+-  new_date->zone = date->zone;
+-
+-  return new_date;
++  return g_memdup (date, sizeof (icaltimetype));
+ }
+ 
+ /**
+-- 
+2.15.1
+

diff --git a/gnome-extra/gnome-calendar/gnome-calendar-3.24.3.ebuild 
b/gnome-extra/gnome-calendar/gnome-calendar-3.24.3.ebuild
index 75c1537a99c..96803962df4 100644
--- a/gnome-extra/gnome-calendar/gnome-calendar-3.24.3.ebuild
+++ b/gnome-extra/gnome-calendar/gnome-calendar-3.24.3.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=6
@@ -32,6 +32,7 @@ DEPEND="${RDEPEND}
 
 PATCHES=(
        "${FILESDIR}"/${PV}-week-grid-fixes.patch # from gnome-3-22 branch
+       "${FILESDIR}"/${PV}-libical3-compat.patch # from master branch, 
https://bugzilla.gnome.org/show_bug.cgi?id=790072
 )
 
 src_configure() {

Reply via email to