- fix 2699
[oweals/gnunet.git] / src / gns / gnunet-gns-fcfsd.c
index 5503000aca79e8a98438664a562a620728d8585c..d55396459cb822d67d70a3484cc9685dfd2c37d4 100644 (file)
@@ -286,16 +286,18 @@ iterate_cb (void *cls,
                                            rd->data,
                                            rd->data_size);
 
-  if (bytes_free < (strlen (name) + strlen (pkey) + 10))
+  if (bytes_free < (strlen (name) + strlen (pkey) + 40))
   {
     new_buf = GNUNET_malloc (zr->buf_len * 2);
     memcpy (new_buf, zr->zoneinfo, zr->write_offset);
     GNUNET_free (zr->zoneinfo);
     zr->zoneinfo = new_buf;
+    zr->buf_len *= 2;
   }
-
-  sprintf (zr->zoneinfo+zr->write_offset, "<tr><td>%s</td><td>%s</td></tr>", name, pkey);
-
+  sprintf (zr->zoneinfo + zr->write_offset, 
+          "<tr><td>%s</td><td>%s</td></tr>", 
+          name, 
+          pkey);
   zr->write_offset = strlen (zr->zoneinfo);
   GNUNET_NAMESTORE_zone_iterator_next (zr->list_it);
   GNUNET_free (pkey);
@@ -970,7 +972,7 @@ main (int argc, char *const *argv)
                            _("GNUnet GNS first come first serve registration service"), 
                           options,
                            &run, NULL)) ? 0 : 1;
-
+  GNUNET_free ((void*) argv);
   return ret;
 }