diff options
author | Milan Crha <mcrha@redhat.com> | 2010-10-21 17:39:53 +0800 |
---|---|---|
committer | Milan Crha <mcrha@redhat.com> | 2010-10-21 17:39:53 +0800 |
commit | d4adff17a2d05f2347e8836e5de0634fc2bca68f (patch) | |
tree | e41ef4aa060c9913bf5a2d82ca6ca2ffb57366d9 | |
parent | c8a922ecca85166f1132680e5a26e4d2bed244f7 (diff) | |
download | gsoc2013-evolution-d4adff17a2d05f2347e8836e5de0634fc2bca68f.tar.gz gsoc2013-evolution-d4adff17a2d05f2347e8836e5de0634fc2bca68f.tar.zst gsoc2013-evolution-d4adff17a2d05f2347e8836e5de0634fc2bca68f.zip |
Bug #597567 - Crash in comp_subject()
Fix works only when compiled with libical 0.46 or later
-rw-r--r-- | configure.ac | 14 | ||||
-rw-r--r-- | shell/main.c | 8 |
2 files changed, 22 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac index d6fdd83685..d7c2abee8f 100644 --- a/configure.ac +++ b/configure.ac @@ -1363,6 +1363,20 @@ EVO_SET_COMPILE_FLAGS(EVOLUTION_CALENDAR, $GTKHTML libebook-1.2 libecal-1.2 $LIB AC_SUBST(EVOLUTION_CALENDAR_CFLAGS) AC_SUBST(EVOLUTION_CALENDAR_LIBS) +dnl **************************** +dnl Check for ical_set_unknown_token_handling_setting function +dnl **************************** +AC_MSG_CHECKING([ical_set_unknown_token_handling_setting function]) +save_cflags=$CFLAGS; CFLAGS=$EVOLUTION_CALENDAR_CFLAGS +save_libs=$LIBS; LIBS="$EVOLUTION_CALENDAR_LIBS" +AC_LINK_IFELSE([AC_LANG_PROGRAM( + [[#include <libical/ical.h>]], + [[ical_set_unknown_token_handling_setting (ICAL_DISCARD_TOKEN)]])], + [AC_DEFINE(HAVE_ICAL_UNKNOWN_TOKEN_HANDLING, 1, [libical provides ical_set_unknown_token_handling_setting function]) ac_cv_have_iuth=yes],[ac_cv_have_iuth=no]) +CFLAGS=$save_cflags +LIBS=$save_libs +AC_MSG_RESULT([$ac_cv_have_iuth]) + dnl ********** dnl Mail Flags dnl ********** diff --git a/shell/main.c b/shell/main.c index cf39a47967..7f2bd0673b 100644 --- a/shell/main.c +++ b/shell/main.c @@ -80,6 +80,10 @@ #include <sys/stat.h> #include <unistd.h> +#ifdef HAVE_ICAL_UNKNOWN_TOKEN_HANDLING +#include <libical/ical.h> +#endif + #define SKIP_WARNING_DIALOG_KEY \ "/apps/evolution/shell/skip_warning_dialog" @@ -531,6 +535,10 @@ main (gint argc, gchar **argv) if (!g_thread_get_initialized ()) g_thread_init (NULL); + #ifdef HAVE_ICAL_UNKNOWN_TOKEN_HANDLING + ical_set_unknown_token_handling_setting (ICAL_DISCARD_TOKEN); + #endif + #ifdef G_OS_WIN32 path = g_build_path (";", _e_get_bindir (), g_getenv ("PATH"), NULL); |