gnunet-svn
[Top][All Lists]
Advanced

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

[GNUnet-SVN] r20534 - gnunet-gtk/src/setup


From: gnunet
Subject: [GNUnet-SVN] r20534 - gnunet-gtk/src/setup
Date: Thu, 15 Mar 2012 15:14:12 +0100

Author: grothoff
Date: 2012-03-15 15:14:12 +0100 (Thu, 15 Mar 2012)
New Revision: 20534

Modified:
   gnunet-gtk/src/setup/gnunet-setup-hostlist-editing.c
   gnunet-gtk/src/setup/gnunet-setup-options.c
Log:
-fixing #2223

Modified: gnunet-gtk/src/setup/gnunet-setup-hostlist-editing.c
===================================================================
--- gnunet-gtk/src/setup/gnunet-setup-hostlist-editing.c        2012-03-15 
14:05:23 UTC (rev 20533)
+++ gnunet-gtk/src/setup/gnunet-setup-hostlist-editing.c        2012-03-15 
14:14:12 UTC (rev 20534)
@@ -44,6 +44,7 @@
   GtkListStore *ls;
   GtkTreeIter old;
   GtkTreeIter iter;
+  gchar *oldtext;
 
   ls = GTK_LIST_STORE (GNUNET_SETUP_get_object
                        ("GNUNET_setup_hostlist_url_liststore"));
@@ -58,9 +59,18 @@
     GNUNET_break (0);
     return;
   }
-
-  gtk_list_store_insert_before (ls, &iter, &old);
-  gtk_list_store_set (ls, &iter, 0, new_text, 1, FALSE, -1);
+  gtk_tree_model_get (GTK_TREE_MODEL (ls), &old, 0, &oldtext, -1);
+  fprintf (stderr, "Edited to `%s'\n", new_text);
+  if (strlen (oldtext) == 0)
+  {
+    gtk_list_store_insert_before (ls, &iter, &old);
+    gtk_list_store_set (ls, &iter, 0, new_text, 1, FALSE, -1);
+  }
+  else
+  {
+    gtk_list_store_set (ls, &old, 0, new_text, 1, FALSE, -1);
+  }
+  g_free (oldtext);
 }
 
 /* end of gnunet-setup-hostlist-editing.c */

Modified: gnunet-gtk/src/setup/gnunet-setup-options.c
===================================================================
--- gnunet-gtk/src/setup/gnunet-setup-options.c 2012-03-15 14:05:23 UTC (rev 
20533)
+++ gnunet-gtk/src/setup/gnunet-setup-options.c 2012-03-15 14:14:12 UTC (rev 
20534)
@@ -640,12 +640,8 @@
   if (ls == NULL)
     return GNUNET_SYSERR;
   t = GNUNET_strdup (value);
-  w = strtok (t, " ");
-  while (w != NULL)
-  {
+  for (w = strtok (t, " "); w != NULL; w = strtok (NULL, " "))
     gtk_list_store_insert_with_values (ls, &iter, G_MAXINT, 0, w, 1, FALSE, 
-1);
-    w = strtok (NULL, " ");
-  }
   GNUNET_free (t);
   gtk_list_store_insert_with_values (ls, &iter, G_MAXINT, 0, "", 1, TRUE, -1);
   return GNUNET_OK;
@@ -683,16 +679,19 @@
     do
     {
       gtk_tree_model_get (tm, &iter, 0, &val, -1);
-      if (value == NULL)
+      if (0 < strlen (val))
       {
-        value = GNUNET_strdup (val);
+       if (value == NULL)
+       {
+         value = GNUNET_strdup (val);
+       }
+       else
+       {
+         GNUNET_asprintf (&n, "%s %s", value, val);
+         GNUNET_free (value);
+         value = n;
+       }
       }
-      else
-      {
-        GNUNET_asprintf (&n, "%s %s", value, val);
-        GNUNET_free (value);
-        value = n;
-      }
       g_free (val);
     }
     while (TRUE == gtk_tree_model_iter_next (tm, &iter));
@@ -1701,6 +1700,17 @@
    NULL},
 
   {
+   "GNUNET_setup_hostlist_url_liststore",
+   "row-deleted",
+   "hostlist",
+   "SERVERS",
+   NULL, NULL,
+   NULL,
+   &save_string_list_store, NULL,
+   NULL, NULL,
+   NULL},
+
+  {
    "GNUNET_setup_hostlist_url_treeview",
    NULL, NULL, NULL,            /* FIXME */
    gettext_noop ("Known hostlist URLs"),




reply via email to

[Prev in Thread] Current Thread [Next in Thread]