[libical] Fixed timezone issue with evolution-data-server (#1021136)

Robert Scheck robert at fedoraproject.org
Sat Oct 19 23:44:36 UTC 2013


commit b45b989aed5d06e8f75f53eb54ee6ac044d621de
Author: Robert Scheck <robert at fedoraproject.org>
Date:   Sun Oct 20 01:44:34 2013 +0200

    Fixed timezone issue with evolution-data-server (#1021136)

 libical-1.0-r1150.patch |   24 ++++++++++++++++++++++++
 libical.spec            |    7 ++++++-
 2 files changed, 30 insertions(+), 1 deletions(-)
---
diff --git a/libical-1.0-r1150.patch b/libical-1.0-r1150.patch
new file mode 100644
index 0000000..08d28f9
--- /dev/null
+++ b/libical-1.0-r1150.patch
@@ -0,0 +1,24 @@
+Backported upstream patch to move the time zone fix in icaltimezone_get_utc_offset over
+to icaltimezone_get_utc_offset_of_utc_time. r1141 made a fix in the first function but not
+the second. This ensures these almost identical methods behave almost identically :) See
+http://sourceforge.net/p/freeassociation/code/1150/ for the upstream patch and also Red Hat
+Bugzilla at https://bugzilla.redhat.com/show_bug.cgi?id=1021136
+
+--- libical-1.0/src/libical/icaltimezone.c		2013-04-14 19:24:42.000000000 +0200
++++ libical-1.0/src/libical/icaltimezone.c.r1150	2013-10-20 01:31:42.000000000 +0200
+@@ -1045,9 +1045,12 @@
+ 	change_num += step;
+ 
+ 	/* If we go past the start of the changes array, then we have no data
+-	   for this time so we return a UTC offset of 0. */
+-	if (change_num < 0)
+-	    return 0;
++	   for this time so we return the prev UTC offset. */
++	if (change_num < 0) {
++	    if (is_daylight)
++	    *is_daylight = ! tmp_change.is_daylight;
++	    return tmp_change.prev_utc_offset;
++	}
+ 
+ 	if ((unsigned int)change_num >= zone->changes->num_elements)
+ 	    break;
diff --git a/libical.spec b/libical.spec
index 07f4e1f..f7993c0 100644
--- a/libical.spec
+++ b/libical.spec
@@ -1,10 +1,11 @@
 Summary:	Reference implementation of the iCalendar data type and serialization format
 Name:		libical
 Version:	1.0
-Release:	2%{?dist}
+Release:	3%{?dist}
 License:	LGPLv2 or MPLv1.1
 URL:		http://freeassociation.sourceforge.net/
 Source:		http://downloads.sourceforge.net/freeassociation/%{name}-%{version}.tar.gz
+Patch0:		libical-1.0-r1150.patch
 
 BuildRequires:	bison, byacc, flex
 BuildRequires:	cmake
@@ -24,6 +25,7 @@ applications that use libical.
 
 %prep
 %setup -q
+%patch0 -p1 -b .r1150
 
 %build
 mkdir -p %{_target_platform}
@@ -60,6 +62,9 @@ rm -fv %{buildroot}%{_libdir}/lib*.*a
 %{_includedir}/libical/
 
 %changelog
+* Sun Oct 20 2013 Robert Scheck <robert at fedoraproject.org> 1.0-3
+- Fixed timezone issue with evolution-data-server (#1021136)
+
 * Sat Aug 03 2013 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 1.0-2
 - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
 


More information about the scm-commits mailing list