[Evolution] Bug#551972:

Andrew SB a.starr.b at gmail.com
Wed Nov 4 00:16:57 UTC 2009


tags 551972 patch
thanks

Upstream provides a patch for this issue:

http://gnome.eu.org/patches/evolution-rss-0.1.4-recv-feeds.patch

We have applied this in Ubuntu. This patch also includes two other
patches proved by upstream as well:

   - 01_folder-rename.patch: patch from upstream. Allows to rename
     folders.
   - 02_folder-properties.patch: patch from upstream. Fixes a crasher.
   - 03_recv-feeds.patch: Retrieve feeds for evolution >= 2.28 (LP: #460462)


--- evolution-rss-0.1.4.orig/debian/patches/01_folder-rename.patch
+++ evolution-rss-0.1.4/debian/patches/01_folder-rename.patch
@@ -0,0 +1,18 @@
+--- src/rss.c.orig	2009-09-23 22:02:02.510080391 +0200
++++ src/rss.c	2009-09-23 22:04:10.425583965 +0200
+@@ -3659,8 +3659,13 @@
+ 		nname = g_strdup(new_name);
+ 	gchar *orig_name = g_hash_table_lookup(rf->feed_folders, oname);
+ 	if (!orig_name) {
+-		if (valid_folder)
+-			return 0;
++		if (valid_folder) {
++			gchar *ofolder = lookup_original_folder(old_name);
++			if (!ofolder)
++				return 0;
++			else if (!lookup_key(ofolder))
++				return 0;
++		}
+ 		g_hash_table_replace(rf->feed_folders, g_strdup(nname), g_strdup(oname));
+ 	} else {
+ 		g_hash_table_replace(rf->feed_folders, g_strdup(nname),
g_strdup(orig_name));
only in patch2:
unchanged:
--- evolution-rss-0.1.4.orig/debian/patches/03_recv-feeds.patch
+++ evolution-rss-0.1.4/debian/patches/03_recv-feeds.patch
@@ -0,0 +1,25 @@
+diff -Nur -x '*.orig' -x '*~' evolution-rss-0.1.4/src/rss.c
evolution-rss-0.1.4.new/src/rss.c
+--- evolution-rss-0.1.4/src/rss.c	2009-10-26 14:44:02.229652800 -0400
++++ evolution-rss-0.1.4.new/src/rss.c	2009-10-26 14:44:04.940649506 -0400
+@@ -2812,7 +2812,11 @@
+         GMutex *lock;
+
+         /* states/data used during shutdown */
+-        enum { MC_QUIT_START, MC_QUIT_SYNC, MC_QUIT_THREADS } quit_state;
++#if EVOLUTION_VERSION >= 22800
++	enum { MC_QUIT_NOT_START, MC_QUIT_START, MC_QUIT_SYNC,
MC_QUIT_THREADS } quit_state;
++#else
++	enum { MC_QUIT_START, MC_QUIT_SYNC, MC_QUIT_THREADS } quit_state;
++#endif
+ };
+
+ void
+@@ -2829,7 +2833,7 @@
+ 		deleted = 1;
+
+ 	MailComponent *mc = mail_component_peek ();
+-        if (mc->priv->quit_state != -1)
++        if (mc->priv->quit_state != MC_QUIT_NOT_START)
+ 		rf->cancel_all=1;
+
+ 	d(g_print("taskbar_op_finish() queue:%d\n", rf->feed_queue));
only in patch2:
unchanged:
--- evolution-rss-0.1.4.orig/debian/patches/02_folder-properties.patch
+++ evolution-rss-0.1.4/debian/patches/02_folder-properties.patch
@@ -0,0 +1,20 @@
+diff -urN evolution-rss-0.1.4.orig/src/rss-config-factory.c
evolution-rss-0.1.4/src/rss-config-factory.c
+--- evolution-rss-0.1.4.orig/src/rss-config-factory.c	2009-08-26
09:24:36.000000000 +0100
++++ evolution-rss-0.1.4/src/rss-config-factory.c	2009-09-15
23:27:13.787560110 +0100
+@@ -2192,7 +2192,15 @@
+ 	add_feed *feed = (add_feed *)g_object_get_data((GObject *)epl, "add-feed");
+ 	gchar *url = (gchar *)g_object_get_data((GObject *)epl, "url");
+ 	gchar *ofolder = (gchar *)g_object_get_data((GObject *)epl, "ofolder");
++
++	EMConfigTargetFolder *targetfolder = (EMConfigTargetFolder
*)target->config->target;
++	gchar *main_folder = lookup_main_folder();
++	gchar *folder = targetfolder->folder->full_name;
+ 	
++	if (folder == NULL
++          || g_ascii_strncasecmp(folder, main_folder, strlen(main_folder))
++          || !g_ascii_strcasecmp(folder, main_folder))
++                return;
+
+ 	GtkWidget *entry1 = (GtkWidget *)glade_xml_get_widget (feed->gui,
"url_entry");
+         GtkWidget *checkbutton1 = (GtkWidget *)glade_xml_get_widget
(feed->gui, "html_check");
+





More information about the Pkg-evolution-maintainers mailing list