diff options
Diffstat (limited to 'src/setup/gnunet-setup-hostlist-editing.c')
-rw-r--r-- | src/setup/gnunet-setup-hostlist-editing.c | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/src/setup/gnunet-setup-hostlist-editing.c b/src/setup/gnunet-setup-hostlist-editing.c index 02056b0d..981645c2 100644 --- a/src/setup/gnunet-setup-hostlist-editing.c +++ b/src/setup/gnunet-setup-hostlist-editing.c | |||
@@ -44,6 +44,7 @@ GNUNET_setup_hostlist_url_cellrenderertext_edited_cb (GtkCellRendererText * | |||
44 | GtkListStore *ls; | 44 | GtkListStore *ls; |
45 | GtkTreeIter old; | 45 | GtkTreeIter old; |
46 | GtkTreeIter iter; | 46 | GtkTreeIter iter; |
47 | gchar *oldtext; | ||
47 | 48 | ||
48 | ls = GTK_LIST_STORE (GNUNET_SETUP_get_object | 49 | ls = GTK_LIST_STORE (GNUNET_SETUP_get_object |
49 | ("GNUNET_setup_hostlist_url_liststore")); | 50 | ("GNUNET_setup_hostlist_url_liststore")); |
@@ -58,9 +59,18 @@ GNUNET_setup_hostlist_url_cellrenderertext_edited_cb (GtkCellRendererText * | |||
58 | GNUNET_break (0); | 59 | GNUNET_break (0); |
59 | return; | 60 | return; |
60 | } | 61 | } |
61 | 62 | gtk_tree_model_get (GTK_TREE_MODEL (ls), &old, 0, &oldtext, -1); | |
62 | gtk_list_store_insert_before (ls, &iter, &old); | 63 | fprintf (stderr, "Edited to `%s'\n", new_text); |
63 | gtk_list_store_set (ls, &iter, 0, new_text, 1, FALSE, -1); | 64 | if (strlen (oldtext) == 0) |
65 | { | ||
66 | gtk_list_store_insert_before (ls, &iter, &old); | ||
67 | gtk_list_store_set (ls, &iter, 0, new_text, 1, FALSE, -1); | ||
68 | } | ||
69 | else | ||
70 | { | ||
71 | gtk_list_store_set (ls, &old, 0, new_text, 1, FALSE, -1); | ||
72 | } | ||
73 | g_free (oldtext); | ||
64 | } | 74 | } |
65 | 75 | ||
66 | /* end of gnunet-setup-hostlist-editing.c */ | 76 | /* end of gnunet-setup-hostlist-editing.c */ |