Blame SOURCES/0023-fix-loading-of-the-user-list-of-ignored-words.patch

28bab8
From f689bf3b1dd26fa14bd96a2a5f0b8a6665d7ab19 Mon Sep 17 00:00:00 2001
28bab8
From: Jakub Filak <jfilak@redhat.com>
28bab8
Date: Thu, 30 Jan 2014 12:49:42 +0100
28bab8
Subject: [LIBREPORT PATCH 23/24] fix loading of the user list of ignored words
28bab8
28bab8
Closes #1063339
28bab8
28bab8
Signed-off-by: Jakub Filak <jfilak@redhat.com>
28bab8
---
28bab8
 src/lib/user_settings.c | 18 ++++++++++++++----
28bab8
 1 file changed, 14 insertions(+), 4 deletions(-)
28bab8
28bab8
diff --git a/src/lib/user_settings.c b/src/lib/user_settings.c
28bab8
index e42ebe0..4cd87ff 100644
28bab8
--- a/src/lib/user_settings.c
28bab8
+++ b/src/lib/user_settings.c
28bab8
@@ -18,19 +18,30 @@
28bab8
 #include "internal_libreport.h"
28bab8
 #include <augeas.h>
28bab8
 
28bab8
+#define BASE_DIR_FOR_USER_CONFIG_FILE "abrt/settings/"
28bab8
+
28bab8
 static map_string_t *user_settings;
28bab8
 static char *conf_path;
28bab8
 
28bab8
-static char *get_conf_path(const char *name)
28bab8
+static char *get_user_config_file_path(const char *name, const char *suffix)
28bab8
 {
28bab8
     char *s, *conf;
28bab8
 
28bab8
-    s = xasprintf("abrt/settings/%s.conf", name);
28bab8
+    if (suffix != NULL)
28bab8
+        s = xasprintf(BASE_DIR_FOR_USER_CONFIG_FILE"%s.%s", name, suffix);
28bab8
+    else
28bab8
+        s = xasprintf(BASE_DIR_FOR_USER_CONFIG_FILE"%s", name);
28bab8
+
28bab8
     conf = concat_path_file(g_get_user_config_dir(), s);
28bab8
     free(s);
28bab8
     return conf;
28bab8
 }
28bab8
 
28bab8
+static char *get_conf_path(const char *name)
28bab8
+{
28bab8
+    return get_user_config_file_path(name, "conf");
28bab8
+}
28bab8
+
28bab8
 bool save_app_conf_file(const char* application_name, map_string_t *settings)
28bab8
 {
28bab8
     char *app_conf_path = get_conf_path(application_name);
28bab8
@@ -103,8 +114,7 @@ GList *load_words_from_file(const char* filename)
28bab8
     GList *words_list = NULL;
28bab8
     GList *file_list = NULL;
28bab8
     file_list = g_list_prepend(file_list, concat_path_file(CONF_DIR, filename));
28bab8
-    // get_conf_path adds .conf suffix, so we need to either change it or use it like this:
28bab8
-    file_list = g_list_prepend(file_list, get_conf_path("forbidden_words"));
28bab8
+    file_list = g_list_prepend(file_list, get_user_config_file_path(filename, /*don't append suffix*/NULL));
28bab8
     GList *file_list_cur = file_list;
28bab8
 
28bab8
     while(file_list_cur)
28bab8
-- 
28bab8
1.8.3.1
28bab8