Perform the forgotten patch removals

This commit is contained in:
Robert Scheck 2011-12-17 15:58:09 +01:00
parent 6195f9490c
commit b305670d9c
3 changed files with 0 additions and 188 deletions

View File

@ -1,72 +0,0 @@
Patch by Debarshi Ray <rishi@fedoraproject.org> for libical >= 0.46, which replaces the broken
overlefts regarding ICAL_ERRORS_ARE_FATAL preprocessor conditions by correct ones. Since libical
0.43, errors are set to be non-fatal by default. Configure has "#define ICAL_ERRORS_ARE_FATAL 0"
which simply invalidates "#ifndef" and thus breaks applications like e.g. Zarafa Groupware. More
details can be found at: https://bugzilla.redhat.com/show_bug.cgi?id=575715
Upstream link: https://sourceforge.net/tracker/?func=detail&aid=3140405&group_id=16077&atid=316077
--- libical-0.46/src/libical/autogenex/ical.h 2010-08-30 22:05:05.000000000 +0200
+++ libical-0.46/src/libical/autogenex/ical.h.errors-are-fatal 2010-12-19 21:39:10.000000000 +0100
@@ -3272,7 +3272,7 @@
void icalerror_set_errno(icalerrorenum x);
#endif
-#ifdef ICAL_ERRORS_ARE_FATAL
+#if ICAL_ERRORS_ARE_FATAL == 1
#undef NDEBUG
#endif
@@ -3282,7 +3282,7 @@
#define icalerror_check_component_type(value,type);
/* Assert with a message */
-#ifdef ICAL_ERRORS_ARE_FATAL
+#if ICAL_ERRORS_ARE_FATAL == 1
#ifdef __GNUC__
#define icalerror_assert(test,message) if(!(test)){fprintf(stderr,"%s(), %s:%d: %s\n",__FUNCTION__,__FILE__,__LINE__,message);icalerror_stop_here(); abort();}
--- libical-0.46/src/libical/icalerror.h 2010-08-30 22:05:06.000000000 +0200
+++ libical-0.46/src/libical/icalerror.h.errors-are-fatal 2010-12-19 21:40:12.000000000 +0100
@@ -121,7 +121,7 @@
void icalerror_set_errno(icalerrorenum x);
#endif
-#ifdef ICAL_ERRORS_ARE_FATAL
+#if ICAL_ERRORS_ARE_FATAL == 1
#undef NDEBUG
#endif
@@ -131,7 +131,7 @@
#define icalerror_check_component_type(value,type);
/* Assert with a message */
-#ifdef ICAL_ERRORS_ARE_FATAL
+#if ICAL_ERRORS_ARE_FATAL == 1
#ifdef __GNUC__
#define icalerror_assert(test,message) if(!(test)){fprintf(stderr,"%s(), %s:%d: %s\n",__FUNCTION__,__FILE__,__LINE__,message);icalerror_stop_here(); abort();}
--- libical-0.46/src/libical/icalparser.c 2010-08-30 22:05:06.000000000 +0200
+++ libical-0.46/src/libical/icalparser.c.errors-are-fatal 2010-12-19 21:41:18.000000000 +0100
@@ -930,10 +930,7 @@
/* Change for mozilla */
/* have the option of being flexible towards unsupported parameters */
- #ifndef ICAL_ERRORS_ARE_FATAL
- continue;
- #endif
-
+ #if ICAL_ERRORS_ARE_FATAL == 1
insert_error(tail, str, "Cant parse parameter name",
ICAL_XLICERRORTYPE_PARAMETERNAMEPARSEERROR);
tail = 0;
@@ -947,6 +944,9 @@
name = 0;
}
return 0;
+ #else
+ continue;
+ #endif
}
/* if (pvalue) {

View File

@ -1,98 +0,0 @@
Patch by David Woodhouse <dwmw2@infradead.org> for libical >= 0.46, which fixes a race in populating
builtin timezone components. When multiple threads call icaltimezone_get_component() for the same
zone, it can be populated by icaltimezone_load_builtin_timezone() multiple times simultaneously, and
bad things happen. More details can be found at: https://bugzilla.redhat.com/show_bug.cgi?id=637150
This patch is already part of upstream and thus should be obsolete once libical 0.47 gets released.
--- libical-0.46/src/libical/icaltimezone.c 2010-08-30 22:05:06.000000000 +0200
+++ libical-0.46/src/libical/icaltimezone.c.icaltimezone 2010-12-19 20:37:11.000000000 +0100
@@ -45,6 +45,11 @@
#include <sys/stat.h>
+#ifdef HAVE_PTHREAD
+#include <pthread.h>
+static pthread_mutex_t builtin_mutex = PTHREAD_MUTEX_INITIALIZER;
+#endif
+
#ifdef WIN32
#include <mbstring.h>
#include <windows.h>
@@ -453,8 +458,7 @@
int changes_end_year;
- if (!zone->component)
- icaltimezone_load_builtin_timezone (zone);
+ icaltimezone_load_builtin_timezone (zone);
if (icaltimezone_minimum_expansion_year == -1) {
struct icaltimetype today = icaltime_today();
@@ -1140,8 +1144,7 @@
if (!zone)
return NULL;
- if (!zone->tzid)
- icaltimezone_load_builtin_timezone (zone);
+ icaltimezone_load_builtin_timezone (zone);
return zone->tzid;
}
@@ -1167,8 +1170,7 @@
if (!zone)
return NULL;
- if (!zone->component)
- icaltimezone_load_builtin_timezone (zone);
+ icaltimezone_load_builtin_timezone (zone);
return zone->tznames;
}
@@ -1210,8 +1212,7 @@
if (!zone)
return NULL;
- if (!zone->component)
- icaltimezone_load_builtin_timezone (zone);
+ icaltimezone_load_builtin_timezone (zone);
return zone->component;
}
@@ -1449,8 +1450,7 @@
for (i=0; i<count; i++) {
int z_offset;
zone = icalarray_element_at (builtin_timezones, i);
- if (!zone->component)
- icaltimezone_load_builtin_timezone (zone);
+ icaltimezone_load_builtin_timezone (zone);
z_offset = get_offset(zone);
@@ -1745,6 +1745,12 @@
if (!zone->location || !zone->location[0])
return;
+#ifdef HAVE_PTHREAD
+ pthread_mutex_lock(&builtin_mutex);
+ if (zone->component)
+ goto out;
+#endif
+
#ifdef USE_BUILTIN_TZDATA
{
char *filename;
@@ -1801,8 +1807,11 @@
icalcomponent_remove_component(comp,subcomp);
icalcomponent_free(comp);
}
-#endif
-
+#endif
+#ifdef HAVE_PTHREAD
+ out:
+ pthread_mutex_unlock(&builtin_mutex);
+#endif
}

View File

@ -1,18 +0,0 @@
Patch by Robert Scheck <robert@fedoraproject.org> for libical >= 0.46, which removes the unused
AC_PROG_MKDIR_P macro, because Red Hat Enterprise Linux 4 and 5 (including derivates/downstreams)
have autoconf < 2.60, which don't support AC_PROG_MKDIR_P. Unfortunately, libical upstream ships
in libical 0.46 broken configure and Makefile files, thus autoreconf needs to be run downstream.
The somehow funny thing is, AC_PROG_MKDIR_P doesn't seem to be used anywhere in the source?!
Upstream link: https://sourceforge.net/tracker/?func=detail&aid=3140412&group_id=16077&atid=316077
--- libical-0.46/configure.in 2010-08-30 22:06:25.000000000 +0200
+++ libical-0.46/configure.in.mkdir_p 2010-12-19 22:48:00.000000000 +0100
@@ -17,7 +17,6 @@
AM_PROG_LEX
AC_PROG_LN_S
AC_PROG_INSTALL
-AC_PROG_MKDIR_P
dnl Initialize libtool
AM_PROG_LIBTOOL