Hello community, here is the log from the commit of package libical for openSUSE:Factory checked in at Thu Apr 21 12:00:41 CEST 2011. -------- --- libical/libical.changes 2010-04-24 13:54:24.000000000 +0200 +++ /mounts/work_src_done/STABLE/libical/libical.changes 2011-03-12 20:13:39.000000000 +0100 @@ -1,0 +2,28 @@ +Fri Mar 11 20:04:22 UTC 2011 - gber@opensuse.org + +- update to version 0.46 + + allow control over how components, properties and parameters + with unknown names are handled + + renamed static set_zone_directory() to set_zonedir() + + added appropriate icaltime_* functions as methods to + icaltimetype + + added icaltimetype.datetime for converting a icaltimetype to a + python datetime + + added icalarray_copy for easy copying of icalarrays + + renamed icaltimetype.datetime to icaltimetype.as_datetime and + added icaltimetype.from_datetime staticmethod + + bugfixes +- correct licensing information +- run autoreconf since tarball misses autconf autgenerated files + (sf#3072673) +- added libical-0.46-fix-race.patch from upstream svn which fixes a + race in populating builtin timezone components +- added libical-0.46-fix-fatal-error-macro-usage.patch from + upstream svn in order to replace broken ICAL_ERRORS_ARE_FATAL + preprocessor conditions with the correct check for the macros + value (sf#3140405) +- added libical-0.46-fix-fatal-error-macro-usage.patch from + upstream svn which fixes endless loop in the recurrence + calculation (sf#3177380) + +------------------------------------------------------------------- calling whatdependson for head-i586 Old: ---- libical-0.44.tar.bz2 New: ---- libical-0.46-fix-endless-loop.patch libical-0.46-fix-fatal-error-macro-usage.patch libical-0.46-fix-race.patch libical-0.46.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ libical.spec ++++++ --- /var/tmp/diff_new_pack.kjnV2H/_old 2011-04-21 11:53:59.000000000 +0200 +++ /var/tmp/diff_new_pack.kjnV2H/_new 2011-04-21 11:53:59.000000000 +0200 @@ -1,7 +1,7 @@ # -# spec file for package libical (Version 0.44) +# spec file for package libical # -# Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -15,7 +15,6 @@ # Please submit bugfixes or comments via http://bugs.opensuse.org/ # -# norootforbuild Name: libical @@ -23,12 +22,17 @@ Url: http://sourceforge.net/projects/freeassociation/ License: MPL .. Group: Development/Libraries/C and C++ -AutoReqProv: on -Version: 0.44 -Release: 3 +Version: 0.46 +Release: 1 Summary: An Implementation of Basic iCAL Protocols Source: libical-%{version}.tar.bz2 Source2: baselibs.conf +# libical-0.46-fix-race.patch gber@opensuse.org -- Fixes a race in populating builtin timezone components (from upstream svn) +Patch0: libical-0.46-fix-race.patch +# libical-0.46-fix-fatal-error-macro-usage.patch sf#3140405 gber@opensuse.org -- Replace broken ICAL_ERRORS_ARE_FATAL preprocessor conditions with the correct check for the macros value +Patch1: libical-0.46-fix-fatal-error-macro-usage.patch +# libical-0.46-fix-endless-loop.patch sf#3177380 gber@opensuse.org -- Fixes endless loop in recurrence calculation +Patch2: libical-0.46-fix-endless-loop.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build Requires: libical0 = %{version} @@ -44,7 +48,6 @@ Group: Development/Libraries/C and C++ Provides: libical = %{version} Obsoletes: libical < %{version} -AutoReqProv: on %description -n libical0 Libical is an open source implementation of the IETF's iCalendar @@ -57,7 +60,6 @@ Summary: An implementation of basic iCAL protocols Group: Development/Libraries/C and C++ Requires: libical = %{version} -AutoReqProv: on %description -n libical-devel Libical is an Open Source implementation of the IETF's iCalendar @@ -78,10 +80,14 @@ component properties, parameters, and subcomponents. %prep -%setup +%setup -q +%patch0 -p2 +%patch1 -p2 +%patch2 -p2 %build -#autoreconf -f -i +# triger autoreconf since the 0.46 tarball is missing autotools bootstrap files +autoreconf -f -i %{configure} \ --with-bdb4 \ --with-bdb4-dir=%{_prefix} \ ++++++ libical-0.46-fix-endless-loop.patch ++++++ Index: trunk/libical/src/libical/icalrecur.c =================================================================== --- trunk/libical/src/libical/icalrecur.c (revision 1043) +++ trunk/libical/src/libical/icalrecur.c (revision 1044) @@ -361,7 +361,7 @@ char *t, *n; int i=0; int sign = 1; - int weekno = 0; + char weekno = 0; /* note: Novell/Groupwise sends BYDAY=255SU, so we fit in a signed char to get -1 SU for last sunday. */ icalrecurrencetype_weekday wd; short *array = parser->rt.by_day; char* end; ++++++ libical-0.46-fix-fatal-error-macro-usage.patch ++++++ Index: trunk/libical/src/libical/autogenex/ical.h =================================================================== --- trunk/libical/src/libical/autogenex/ical.h (revision 1041) +++ trunk/libical/src/libical/autogenex/ical.h (revision 1042) @@ -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();} Index: trunk/libical/src/libical/icalparser.c =================================================================== --- trunk/libical/src/libical/icalparser.c (revision 1041) +++ trunk/libical/src/libical/icalparser.c (revision 1042) @@ -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) { Index: trunk/libical/src/libical/icalerror.h =================================================================== --- trunk/libical/src/libical/icalerror.h (revision 1041) +++ trunk/libical/src/libical/icalerror.h (revision 1042) @@ -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-fix-race.patch ++++++ Index: trunk/libical/src/libical/icaltimezone.c =================================================================== --- trunk/libical/src/libical/icaltimezone.c (revision 1038) +++ trunk/libical/src/libical/icaltimezone.c (revision 1039) @@ -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 } ++++++ libical-0.44.tar.bz2 -> libical-0.46.tar.bz2 ++++++ ++++ 13257 lines of diff (skipped) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... -- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org