diff options
author | Milan Crha <mcrha@redhat.com> | 2009-10-30 01:58:09 +0800 |
---|---|---|
committer | Milan Crha <mcrha@redhat.com> | 2009-10-30 01:59:31 +0800 |
commit | 7e8315f353375831cce155a5cc892fd444cad971 (patch) | |
tree | 566ffdc373e33981da251943c0d499792bc0b887 /plugins/email-custom-header | |
parent | 46bfd9b497963ca51ff5806f7e70f1d73f68576a (diff) | |
download | gsoc2013-evolution-7e8315f353375831cce155a5cc892fd444cad971.tar.gz gsoc2013-evolution-7e8315f353375831cce155a5cc892fd444cad971.tar.zst gsoc2013-evolution-7e8315f353375831cce155a5cc892fd444cad971.zip |
Bug #570835 - Custom e-mail headers inserted with double column
Diffstat (limited to 'plugins/email-custom-header')
-rw-r--r-- | plugins/email-custom-header/email-custom-header.c | 34 |
1 files changed, 16 insertions, 18 deletions
diff --git a/plugins/email-custom-header/email-custom-header.c b/plugins/email-custom-header/email-custom-header.c index 127cbdc815..dad324aa02 100644 --- a/plugins/email-custom-header/email-custom-header.c +++ b/plugins/email-custom-header/email-custom-header.c @@ -279,7 +279,6 @@ epech_load_from_gconf (GConfClient *client,const gchar *path,CustomHeaderOptions CustomSubHeader temp_header_value_details = {NULL}; GSList *header_list,*q; gchar *buffer; - gchar *str_colon; gint index,pos; priv = mch->priv; @@ -293,13 +292,11 @@ epech_load_from_gconf (GConfClient *client,const gchar *path,CustomHeaderOptions temp_header_details.sub_header_type_value = g_array_new (TRUE, TRUE, sizeof (CustomSubHeader)); buffer = q->data; parse_header_list = g_strsplit_set (buffer, "=;,", -1); - str_colon = g_strconcat (parse_header_list[0], ":", NULL); temp_header_details.header_type_value = g_string_new(""); if (temp_header_details.header_type_value) { - g_string_assign(temp_header_details.header_type_value, str_colon); + g_string_assign(temp_header_details.header_type_value, parse_header_list[0]); } - g_free (str_colon); for (index = 0; parse_header_list[index+1] ; ++index) { temp_header_value_details.sub_header_string_value = g_string_new(""); @@ -615,9 +612,12 @@ commit_changes (ConfigData *cd) while (valid) { gchar *keyword = NULL, *value = NULL; - gtk_tree_model_get (model, &iter, HEADER_KEY_COLUMN, &keyword, -1); - /* Check if the keyword is not empty */ - gtk_tree_model_get (model, &iter, HEADER_VALUE_COLUMN, &value, -1); + + gtk_tree_model_get (model, &iter, + HEADER_KEY_COLUMN, &keyword, + HEADER_VALUE_COLUMN, &value, + -1); + /* Check if the keyword is not empty */ if ((keyword) && (g_utf8_strlen(g_strstrip(keyword), -1) > 0)) { if ((value) && (g_utf8_strlen(g_strstrip(value), -1) > 0)) { @@ -625,7 +625,10 @@ commit_changes (ConfigData *cd) } header_config_list = g_slist_append (header_config_list, g_strdup(keyword)); } + g_free (keyword); + g_free (value); + valid = gtk_tree_model_iter_next (model, &iter); } @@ -742,7 +745,6 @@ header_add_clicked (GtkButton *button, ConfigData *cd) { GtkTreeModel *model; GtkTreeIter iter; - gchar *new_header = NULL; GtkTreeViewColumn *focus_col; GtkTreePath *path; @@ -752,12 +754,11 @@ header_add_clicked (GtkButton *button, ConfigData *cd) /* Disconnect from signal so that we can create an empty row */ g_signal_handlers_disconnect_matched(G_OBJECT(model), G_SIGNAL_MATCH_FUNC, 0, 0, NULL, header_isempty, cd); - new_header = g_strdup (""); gtk_list_store_append (GTK_LIST_STORE (model), &iter); gtk_list_store_set (GTK_LIST_STORE (model), &iter, - HEADER_KEY_COLUMN, new_header, -1); + HEADER_KEY_COLUMN, "", -1); gtk_list_store_set (GTK_LIST_STORE (model), &iter, - HEADER_VALUE_COLUMN, new_header, -1); + HEADER_VALUE_COLUMN, "", -1); focus_col = gtk_tree_view_get_column (GTK_TREE_VIEW (cd->treeview), HEADER_KEY_COLUMN); path = gtk_tree_model_get_path (model, &iter); @@ -877,7 +878,6 @@ e_plugin_lib_get_configure_widget (EPlugin *epl) GtkTreeModel *model; gint index; gchar *buffer; - gchar *str_colon = NULL, *str1_colon = NULL; GtkTreeViewColumn *col; gint col_pos; @@ -949,17 +949,15 @@ e_plugin_lib_get_configure_widget (EPlugin *epl) buffer = list->data; gtk_list_store_append (cd->store, &iter); + parse_header_list = g_strsplit_set (buffer, "=,", -1); - str_colon = g_strconcat (parse_header_list[0], "", NULL); - gtk_list_store_set (cd->store, &iter, HEADER_KEY_COLUMN, str_colon, -1); + + gtk_list_store_set (cd->store, &iter, HEADER_KEY_COLUMN, parse_header_list[0], -1); for (index = 0; parse_header_list[index+1] ; ++index) { - str1_colon = g_strconcat (parse_header_list[index+1], "", NULL); - gtk_list_store_set (cd->store, &iter, HEADER_VALUE_COLUMN, str1_colon, -1); + gtk_list_store_set (cd->store, &iter, HEADER_VALUE_COLUMN, parse_header_list[index+1], -1); } } - g_free (str_colon); - g_free (str1_colon); if (header_list) { g_slist_foreach (header_list, (GFunc) g_free, NULL); |