summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPacho Ramos <pacho@gentoo.org>2013-08-09 17:35:13 +0000
committerPacho Ramos <pacho@gentoo.org>2013-08-09 17:35:13 +0000
commit0055dedbd0753469ca6c5d39a11f37eb9dce5336 (patch)
tree90a56cdfc10adfd61a90f9ff994e1494223a1bb2 /mail-client
parentOwn the dropin.cache for axiom.plugins. (diff)
downloadgentoo-2-0055dedbd0753469ca6c5d39a11f37eb9dce5336.tar.gz
gentoo-2-0055dedbd0753469ca6c5d39a11f37eb9dce5336.tar.bz2
gentoo-2-0055dedbd0753469ca6c5d39a11f37eb9dce5336.zip
Fix 'Old POP3 mails can be removed before getting them, upstream bug #705446', drop old
(Portage version: 2.1.13.7/cvs/Linux x86_64, signed Manifest commit with key A188FBD4)
Diffstat (limited to 'mail-client')
-rw-r--r--mail-client/evolution/ChangeLog9
-rw-r--r--mail-client/evolution/evolution-3.8.4-r1.ebuild (renamed from mail-client/evolution/evolution-3.8.3.ebuild)24
-rw-r--r--mail-client/evolution/files/evolution-3.8.4-pop3-removal.patch70
3 files changed, 91 insertions, 12 deletions
diff --git a/mail-client/evolution/ChangeLog b/mail-client/evolution/ChangeLog
index e97a6b5422cd..7b5e3aae2cdc 100644
--- a/mail-client/evolution/ChangeLog
+++ b/mail-client/evolution/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for mail-client/evolution
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/mail-client/evolution/ChangeLog,v 1.401 2013/08/04 08:48:48 tetromino Exp $
+# $Header: /var/cvsroot/gentoo-x86/mail-client/evolution/ChangeLog,v 1.402 2013/08/09 17:35:13 pacho Exp $
+
+*evolution-3.8.4-r1 (09 Aug 2013)
+
+ 09 Aug 2013; Pacho Ramos <pacho@gentoo.org> +evolution-3.8.4-r1.ebuild,
+ +files/evolution-3.8.4-pop3-removal.patch, -evolution-3.8.3.ebuild:
+ Fix 'Old POP3 mails can be removed before getting them, upstream bug #705446',
+ drop old
04 Aug 2013; Alexandre Rostovtsev <tetromino@gentoo.org>
evolution-3.8.3.ebuild, evolution-3.8.4.ebuild:
diff --git a/mail-client/evolution/evolution-3.8.3.ebuild b/mail-client/evolution/evolution-3.8.4-r1.ebuild
index c32d9b1eff4c..39a2f15ddb44 100644
--- a/mail-client/evolution/evolution-3.8.3.ebuild
+++ b/mail-client/evolution/evolution-3.8.4-r1.ebuild
@@ -1,12 +1,12 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/mail-client/evolution/evolution-3.8.3.ebuild,v 1.3 2013/08/04 08:48:48 tetromino Exp $
+# $Header: /var/cvsroot/gentoo-x86/mail-client/evolution/evolution-3.8.4-r1.ebuild,v 1.1 2013/08/09 17:35:13 pacho Exp $
EAPI="5"
GCONF_DEBUG="no"
GNOME2_LA_PUNT="yes"
-inherit autotools eutils flag-o-matic readme.gentoo gnome2
+inherit eutils flag-o-matic readme.gentoo gnome2 #autotools
DESCRIPTION="Integrated mail, addressbook and calendaring functionality"
HOMEPAGE="https://live.gnome.org/Evolution http://projects.gnome.org/evolution/"
@@ -40,7 +40,7 @@ COMMON_DEPEND="
>=x11-misc/shared-mime-info-0.22
>=x11-themes/gnome-icon-theme-2.30.2.1
>=dev-libs/libgdata-0.10:=
- >=net-libs/webkit-gtk-1.10.0
+ >=net-libs/webkit-gtk-1.10.0:3
x11-libs/libSM
x11-libs/libICE
@@ -50,18 +50,15 @@ COMMON_DEPEND="
=app-crypt/gnupg-1.4* ) )
map? (
>=app-misc/geoclue-0.12.0
- >=media-libs/libchamplain-0.12:0.12
+ >=media-libs/libchamplain-0.12:0.12[gtk]
>=media-libs/clutter-1.0.0:1.0
>=media-libs/clutter-gtk-0.90:1.0
~sci-geosciences/geocode-glib-0.99.0
x11-libs/mx:1.0 )
gnome-online-accounts? ( >=net-libs/gnome-online-accounts-3.2 )
- gstreamer? ( || (
- ( media-libs/gstreamer:1.0
- media-libs/gst-plugins-base:1.0 )
- ( media-libs/gstreamer:0.10
- media-libs/gst-plugins-base:0.10 )
- ) )
+ gstreamer? (
+ media-libs/gstreamer:1.0
+ media-libs/gst-plugins-base:1.0 )
kerberos? ( virtual/krb5:= )
ldap? ( >=net-nds/openldap-2:= )
ssl? (
@@ -98,10 +95,15 @@ x-scheme-handler/https=firefox.desktop
file from /usr/share/applications if you use a different browser)."
src_prepare() {
+ # Reason?
ELTCONF="--reverse-deps"
+
DOCS="AUTHORS ChangeLog* HACKING MAINTAINERS NEWS* README"
- eautoreconf # See https://bugzilla.gnome.org/701904
+ # Old POP3 mails can be removed before getting them, upstream bug #705446
+ epatch "${FILESDIR}/${P}-pop3-removal.patch"
+
+ #eautoreconf # See https://bugzilla.gnome.org/701904
gnome2_src_prepare
diff --git a/mail-client/evolution/files/evolution-3.8.4-pop3-removal.patch b/mail-client/evolution/files/evolution-3.8.4-pop3-removal.patch
new file mode 100644
index 000000000000..052f1d5b7f4a
--- /dev/null
+++ b/mail-client/evolution/files/evolution-3.8.4-pop3-removal.patch
@@ -0,0 +1,70 @@
+From 8b8ddbd16eeb3217a7a15b59e8f966b61d989977 Mon Sep 17 00:00:00 2001
+From: Milan Crha <mcrha@redhat.com>
+Date: Thu, 08 Aug 2013 05:48:49 +0000
+Subject: Bug #705446 - Old POP3 mails can be removed before getting them
+
+---
+diff --git a/libemail-engine/mail-ops.c b/libemail-engine/mail-ops.c
+index dccd001..643b82c 100644
+--- a/libemail-engine/mail-ops.c
++++ b/libemail-engine/mail-ops.c
+@@ -348,7 +348,7 @@ fetch_mail_exec (struct _fetch_mail_msg *m,
+ g_object_ref (fm->destination);
+ }
+
+- if (!local_error) {
++ if (!local_error && !g_cancellable_is_cancelled (cancellable)) {
+ folder_uids = camel_folder_get_uids (folder);
+ cache_uids = camel_uid_cache_get_new_uids (cache, folder_uids);
+
+@@ -373,11 +373,26 @@ fetch_mail_exec (struct _fetch_mail_msg *m,
+ g_cancellable_reset (m->cancellable);
+
+ if (!success) {
++ GPtrArray *uncached_uids;
++ GHashTable *uncached_hash;
++
++ uncached_uids = camel_folder_get_uncached_uids (folder, cache_uids, NULL);
++ uncached_hash = g_hash_table_new (g_str_hash, g_str_equal);
++
++ for (i = 0; uncached_uids && i < uncached_uids->len; i++) {
++ g_hash_table_insert (uncached_hash, uncached_uids->pdata[i], uncached_uids->pdata[i]);
++ }
++
+ /* re-enter known UIDs, thus they are not
+ * re-fetched next time */
+ for (i = 0; i < cache_uids->len; i++) {
+- camel_uid_cache_save_uid (cache, cache_uids->pdata[i]);
++ /* skip uncached UIDs */
++ if (!g_hash_table_lookup (uncached_hash, cache_uids->pdata[i]))
++ camel_uid_cache_save_uid (cache, cache_uids->pdata[i]);
+ }
++
++ g_hash_table_destroy (uncached_hash);
++ camel_folder_free_uids (folder, uncached_uids);
+ }
+
+ /* save the cache of uids that we've just downloaded */
+@@ -433,9 +448,18 @@ exit:
+
+ /* also disconnect if not a local delivery mbox;
+ * there is no need to keep the connection alive forever */
+- if (!is_local_delivery)
++ if (!is_local_delivery) {
++ gboolean was_cancelled;
++
++ was_cancelled = g_cancellable_is_cancelled (cancellable);
++
++ /* pity, but otherwise it doesn't disconnect */
++ if (was_cancelled)
++ g_cancellable_reset (cancellable);
++
+ camel_service_disconnect_sync (
+- service, TRUE, cancellable, NULL);
++ service, !was_cancelled, cancellable, NULL);
++ }
+
+ g_object_unref (session);
+ }
+--
+cgit v0.9.2