[evolution-rss] prefer raw name processing do not eascape name for old feeds because it makes deletion impossible. N



commit b96c31ef237d137446ba94e4767eba2cc7b7d42f
Author: Lucian Langa <lucilanga gnome org>
Date:   Thu Apr 7 21:32:28 2011 +0300

    prefer raw name processing
    do not eascape name for old feeds because it makes deletion impossible.
    New names should be added to the list properly

 src/rss-config-factory.c |    2 +-
 src/rss.c                |   15 +++++++++++++++
 src/rss.h                |    1 +
 3 files changed, 17 insertions(+), 1 deletions(-)
---
diff --git a/src/rss-config-factory.c b/src/rss-config-factory.c
index 12e11e9..1ce8917 100644
--- a/src/rss-config-factory.c
+++ b/src/rss-config-factory.c
@@ -361,7 +361,7 @@ construct_list(gpointer key, gpointer value, gpointer user_data)
 
 	gchar *tip = g_markup_escape_text(key, strlen(key));
 	gtk_list_store_append (store, &iter);
-	full_name = lookup_feed_folder(key);
+	full_name = lookup_feed_folder_raw(key);
 	name = g_path_get_basename(full_name);
 	full_path = g_build_filename(
 			lookup_main_folder(),
diff --git a/src/rss.c b/src/rss.c
index 8447327..b6a1027 100644
--- a/src/rss.c
+++ b/src/rss.c
@@ -3942,6 +3942,21 @@ lookup_feed_folder(gchar *folder)
 	return res;
 }
 
+//
+//lookups feed folder name
+//this can be different from the default if folder was renamed
+//
+
+gchar *
+lookup_feed_folder_raw(gchar *folder)
+{
+	gchar *new_folder = g_hash_table_lookup(
+				rf->reversed_feed_folders, folder);
+	/* replace remaining dots with spaces - dots aren't supported since evo's Maildir migration*/
+	gchar *res = g_strdup(new_folder ? new_folder : folder);
+	return res;
+}
+
 gchar *
 lookup_chn_name_by_url(gchar *url)
 {
diff --git a/src/rss.h b/src/rss.h
index 0542e67..38b5145 100644
--- a/src/rss.h
+++ b/src/rss.h
@@ -409,6 +409,7 @@ gboolean update_articles(gboolean disabler);
 gchar *lookup_chn_name_by_url(gchar *url);
 gchar *lookup_main_folder(void);
 gchar *lookup_feed_folder(gchar *folder);
+gchar *lookup_feed_folder_raw(gchar *folder);
 gchar *lookup_original_folder(
 	gchar *folder,
 	gboolean *found);



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]