fix memory leak
authorChristian Grothoff <christian@grothoff.org>
Thu, 4 Jan 2018 20:51:53 +0000 (21:51 +0100)
committerChristian Grothoff <christian@grothoff.org>
Thu, 4 Jan 2018 20:51:53 +0000 (21:51 +0100)
src/include/gnunet_set_service.h
src/revocation/gnunet-service-revocation.c
src/testbed/gnunet-daemon-testbed-blacklist.c

index a2999aebcb9851ef4303bf1e1a743bd8944b8077..0c14aa945f2221d7da99e9759d542b84964ae798 100644 (file)
@@ -530,6 +530,7 @@ GNUNET_SET_iterate (struct GNUNET_SET_Handle *set,
                     GNUNET_SET_ElementIterator iter,
                     void *iter_cls);
 
+
 /**
  * Stop iteration over all elements in the given set.  Can only
  * be called before the iteration has "naturally" completed its
@@ -540,6 +541,7 @@ GNUNET_SET_iterate (struct GNUNET_SET_Handle *set,
 void
 GNUNET_SET_iterate_cancel (struct GNUNET_SET_Handle *set);
 
+
 /**
  * Create a copy of an element.  The copy
  * must be GNUNET_free-d by the caller.
@@ -550,6 +552,7 @@ GNUNET_SET_iterate_cancel (struct GNUNET_SET_Handle *set);
 struct GNUNET_SET_Element *
 GNUNET_SET_element_dup (const struct GNUNET_SET_Element *element);
 
+
 /**
  * Hash a set element.
  *
index 8281e9a16614d74ad23ed955f89e1bb7a2ba3990..23f654141820ea76f387d5f46de0896e3e5ff85f 100644 (file)
@@ -759,7 +759,11 @@ handle_revocation_union_request (void *cls,
   {
     peer_entry = new_peer_entry (other_peer);
   }
-  GNUNET_assert (NULL == peer_entry->so);
+  if (NULL != peer_entry->so)
+  {
+    GNUNET_break_op (0);
+    return;
+  }
   peer_entry->so = GNUNET_SET_accept (request,
                                       GNUNET_SET_RESULT_ADDED,
                                       (struct GNUNET_SET_Option[]) {{ 0 }},
@@ -769,8 +773,7 @@ handle_revocation_union_request (void *cls,
       GNUNET_SET_commit (peer_entry->so,
                          revocation_set))
   {
-    GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
-                _("SET service crashed, terminating revocation service\n"));
+    GNUNET_break (0);
     GNUNET_SCHEDULER_shutdown ();
     return;
   }
index f2f96ee091687d8f013945441552898394608543..3ebe20258b72216f97398a20eb7604dd6730625e 100644 (file)
@@ -190,7 +190,8 @@ run (void *cls,
   char *fname;
 
   if (GNUNET_OK !=
-      GNUNET_CONFIGURATION_get_value_filename (c, "PATHS",
+      GNUNET_CONFIGURATION_get_value_filename (c,
+                                              "PATHS",
                                               "GNUNET_HOME",
                                               &shome))
   {
@@ -208,6 +209,7 @@ run (void *cls,
     GNUNET_free (fname);
     return;
   }
+  GNUNET_free (fname);
   GNUNET_asprintf (&fname,
                    "%s/blacklist",
                    shome);