diff --git a/.gitignore b/.gitignore index ffb8d06..1e3defa 100644 --- a/.gitignore +++ b/.gitignore @@ -44,3 +44,7 @@ evolution-2.31.5.tar.bz2 /evolution-3.5.91.tar.xz /evolution-3.5.92.tar.xz /evolution-3.6.0.tar.xz +/evolution-3.6.1.tar.xz +/evolution-3.6.2.tar.xz +/evolution-3.6.3.tar.xz +/evolution-3.6.4.tar.xz diff --git a/evolution-2.30.1-help-contents.patch b/evolution-2.30.1-help-contents.patch index e2b75a2..8586c4f 100644 --- a/evolution-2.30.1-help-contents.patch +++ b/evolution-2.30.1-help-contents.patch @@ -9,8 +9,8 @@ diff -up evolution-2.30.1.2/shell/e-shell-window-actions.c.help-contents evoluti + /* Viewing user documentation requires the evolution-help + * Fedora package. Look for one of the files it installs. */ + path = g_build_filename ( -+ EVOLUTION_DATADIR, "gnome", "help", -+ PACKAGE, "C", "index.page", NULL); ++ EVOLUTION_DATADIR, "help", "C", ++ PACKAGE, "index.page", NULL); + if (!g_file_test (path, G_FILE_TEST_IS_REGULAR)) + gtk_action_set_visible (ACTION (CONTENTS), FALSE); + g_free (path); diff --git a/evolution-3.6.4-restore-dconf.patch b/evolution-3.6.4-restore-dconf.patch new file mode 100644 index 0000000..521ea13 --- /dev/null +++ b/evolution-3.6.4-restore-dconf.patch @@ -0,0 +1,92 @@ +diff --git a/modules/backup-restore/evolution-backup-tool.c b/modules/backup-restore/evolution-backup-tool.c +index 7c8fc72..10522c5 100644 +--- a/modules/backup-restore/evolution-backup-tool.c ++++ b/modules/backup-restore/evolution-backup-tool.c +@@ -156,7 +156,8 @@ strip_home_dir (const gchar *dir) + } + + static GString * +-replace_variables (const gchar *str) ++replace_variables (const gchar *str, ++ gboolean remove_dir_sep) + { + GString *res = NULL, *use; + const gchar *strip_datadir, *strip_configdir; +@@ -185,9 +186,11 @@ replace_variables (const gchar *str) + + g_return_val_if_fail (res != NULL, NULL); + +- /* remove trailing dir separator */ +- while (res->len > 0 && res->str[res->len - 1] == G_DIR_SEPARATOR) { +- g_string_truncate (res, res->len - 1); ++ if (remove_dir_sep) { ++ /* remove trailing dir separator */ ++ while (res->len > 0 && res->str[res->len - 1] == G_DIR_SEPARATOR) { ++ g_string_truncate (res, res->len - 1); ++ } + } + + return res; +@@ -208,7 +211,7 @@ replace_in_file (const gchar *filename, + g_return_if_fail (replace != NULL); + + if (strstr (filename, "$")) { +- filenamestr = replace_variables (filename); ++ filenamestr = replace_variables (filename, TRUE); + + if (!filenamestr) { + g_warning ( +@@ -258,7 +261,7 @@ run_cmd (const gchar *cmd) + + if (strstr (cmd, "$") != NULL) { + /* read the doc for g_get_home_dir to know why replacing it here */ +- GString *str = replace_variables (cmd); ++ GString *str = replace_variables (cmd, FALSE); + + if (str) { + print_and_run (str->str); +@@ -280,14 +283,15 @@ write_dir_file (void) + GString *content, *filename; + GError *error = NULL; + +- filename = replace_variables ("$HOME/" EVOLUTION_DIR_FILE); ++ filename = replace_variables ("$HOME/" EVOLUTION_DIR_FILE, TRUE); + g_return_if_fail (filename != NULL); + + content = replace_variables ( + "[" KEY_FILE_GROUP "]\n" + "Version=" VERSION "\n" + "UserDataDir=$STRIPDATADIR\n" +- "UserConfigDir=$STRIPCONFIGDIR\n"); ++ "UserConfigDir=$STRIPCONFIGDIR\n" ++ , TRUE); + g_return_if_fail (content != NULL); + + g_file_set_contents (filename->str, content->str, content->len, &error); +@@ -453,7 +457,7 @@ get_source_manager_reload_command (void) + GString *tmp; + gchar *command; + +- tmp = replace_variables (DBUS_SOURCE_REGISTRY_SERVICE_FILE); ++ tmp = replace_variables (DBUS_SOURCE_REGISTRY_SERVICE_FILE, TRUE); + if (tmp) { + GKeyFile *key_file; + gchar *str = NULL; +@@ -535,7 +539,7 @@ restore (const gchar *filename, + run_cmd (command); + g_free (command); + +- dir_fn = replace_variables ("$TMP" G_DIR_SEPARATOR_S EVOLUTION_DIR_FILE); ++ dir_fn = replace_variables ("$TMP" G_DIR_SEPARATOR_S EVOLUTION_DIR_FILE, TRUE); + if (!dir_fn) { + g_warning ("Failed to create evolution's dir filename"); + goto end; +@@ -607,7 +611,7 @@ restore (const gchar *filename, + + if (is_new_format) { + /* new format has it in DATADIR... */ +- GString *file = replace_variables (EVOLUTION_DIR ANCIENT_GCONF_DUMP_FILE); ++ GString *file = replace_variables (EVOLUTION_DIR ANCIENT_GCONF_DUMP_FILE, TRUE); + if (file && g_file_test (file->str, G_FILE_TEST_EXISTS)) { + /* ancient backup */ + replace_in_file ( diff --git a/evolution-3.6.4-send-message-leak.patch b/evolution-3.6.4-send-message-leak.patch new file mode 100644 index 0000000..81b1342 --- /dev/null +++ b/evolution-3.6.4-send-message-leak.patch @@ -0,0 +1,12 @@ +diff --git a/libemail-engine/e-mail-session-utils.c b/libemail-engine/e-mail-session-utils.c +index 86c2545..c9100ff 100644 +--- a/libemail-engine/e-mail-session-utils.c ++++ b/libemail-engine/e-mail-session-utils.c +@@ -933,7 +933,6 @@ e_mail_session_send_to (EMailSession *session, + context->io_priority = io_priority; + context->from = from; + context->recipients = recipients; +- context->message = g_object_ref (message); + context->info = info; + context->xev = xev; + context->post_to_uris = post_to_uris; diff --git a/evolution.spec b/evolution.spec index 939fcc5..ce90e53 100644 --- a/evolution.spec +++ b/evolution.spec @@ -3,7 +3,7 @@ %define gnome_doc_utils_version 0.8.0 %define gnome_icon_theme_version 2.30.2.1 %define gtk3_version 3.2.0 -%define gtkhtml_version 4.3.1 +%define gtkhtml_version 4.6.4 %define intltool_version 0.35.5 %define libgdata_version 0.10.0 %define libgweather_version 3.5.0 @@ -28,14 +28,14 @@ ### Abstract ### Name: evolution -Version: 3.6.0 -Release: 1%{?dist} +Version: 3.6.4 +Release: 3%{?dist} Group: Applications/Productivity Summary: Mail and calendar client for GNOME License: GPLv2+ and GFDL URL: http://projects.gnome.org/evolution/ BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX) -Source: http://download.gnome.org/sources/%{name}/3.5/%{name}-%{version}.tar.xz +Source: http://download.gnome.org/sources/%{name}/3.6/%{name}-%{version}.tar.xz Obsoletes: anjal <= %{last_anjal_version} Obsoletes: libgal2 <= %{last_libgal2_version} @@ -49,6 +49,11 @@ Patch01: evolution-1.4.4-ldap-x86_64-hack.patch # RH bug #589555 Patch02: evolution-2.30.1-help-contents.patch +Patch03: evolution-3.6.4-restore-dconf.patch + +# RH-bug #916890 +Patch04: evolution-3.6.4-send-message-leak.patch + ## Dependencies ### Requires: gnome-icon-theme >= %{gnome_icon_theme_version} @@ -89,7 +94,6 @@ BuildRequires: nspr-devel BuildRequires: nss-devel BuildRequires: pkgconfig BuildRequires: rarian-compat -BuildRequires: unique3-devel BuildRequires: webkitgtk3-devel >= %{webkit_version} BuildRequires: yelp-tools @@ -191,6 +195,8 @@ This package contains the plugin to import Microsoft Personal Storage Table %setup -q -n evolution-%{version} %patch01 -p1 -b .ldaphack %patch02 -p1 -b .help-contents +%patch03 -p1 -b .restore-dconf +%patch04 -p1 -b .send-message-leak mkdir -p krb5-fakeprefix/include mkdir -p krb5-fakeprefix/lib @@ -529,6 +535,42 @@ rm -rf $RPM_BUILD_ROOT %endif %changelog +* Fri Mar 15 2013 Milan Crha - 3.6.4-3 +- Add patch for Red Hat bug #916890 (memory leaks during message send) + +* Thu Mar 07 2013 Milan Crha - 3.6.4-2 +- Add upstream patch to properly restore DConf settings from a backup + +* Thu Mar 07 2013 Milan Crha - 3.6.4-1 +- Update to 3.6.4 +- Remove patch for Red Hat bug #475117 (fixed upstream) +- Remove patch for Red Hat bug #903469 (fixed upstream) + +* Thu Jan 24 2013 Milan Crha - 3.6.3-2 +- Add patch for Red Hat bug #475117 (Reply in multipart/digest) +- Add patch for Red Hat bug #903469 (Formatting of text/* parts) + +* Tue Jan 22 2013 Milan Crha - 3.6.3-1 +- Update to 3.6.3 +- Remove patch for Red Hat bug #875109 (fixed upstream) +- Remove patch for Red Hat bug #877562 (fixed upstream) +- Correct help-context patch test path (Red Hat bug #901341) + +* Wed Nov 21 2012 Milan Crha - 3.6.2-3 +- Add patch for Red Hat bug #877562 (restore doesn't work properly) + +* Tue Nov 13 2012 Milan Crha - 3.6.2-2 +- Add patch for Red Hat bug #875109 (Crash in http_request_send_async) + +* Mon Nov 12 2012 Milan Crha - 3.6.2-1 +- Update to 3.6.2 + +* Fri Nov 09 2012 Matthew Barnes - 3.6.1-2 +- Drop unique3-devel BR, it's an ancient artifact. + +* Sat Oct 13 2012 Matthew Barnes - 3.6.1-1 +- Update to 3.6.1 + * Mon Sep 24 2012 Matthew Barnes - 3.6.0-1 - Update to 3.6.0 - Remove patch for GNOME #678408 (fixed upstream). diff --git a/sources b/sources index 83fa0b3..7365daa 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -5ceb71ca0bcc1f706f1a3283585c048c evolution-3.6.0.tar.xz +699c29a0179df3866ecc2f972bc626a4 evolution-3.6.4.tar.xz