From b56fbb9f87a5c16f39ae974bc192a78d28e5931e Mon Sep 17 00:00:00 2001 From: Christian Fuchs Date: Mon, 26 May 2014 15:25:17 +0000 Subject: - removed double-free after set has freed its set already --- src/scalarproduct/gnunet-service-scalarproduct.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'src/scalarproduct') diff --git a/src/scalarproduct/gnunet-service-scalarproduct.c b/src/scalarproduct/gnunet-service-scalarproduct.c index de3849690..f91292335 100644 --- a/src/scalarproduct/gnunet-service-scalarproduct.c +++ b/src/scalarproduct/gnunet-service-scalarproduct.c @@ -1239,6 +1239,7 @@ cb_intersection_element_removed (void *cls, case GNUNET_SET_STATUS_DONE: s->intersection_op = NULL; + s->intersection_set = NULL; if (2 > s->used_element_count) { @@ -1808,8 +1809,8 @@ handle_client_message (void *cls, GNUNET_free (elem); continue; } - set_elem.data = &elements[i].key; - set_elem.size = htons (sizeof (elements[i].key)); + set_elem.data = &elem->key; + set_elem.size = htons (sizeof (elem->key)); set_elem.type = htons (0); /* do we REALLY need this? */ GNUNET_SET_add_element (s->intersection_set, &set_elem, NULL, NULL); s->used_element_count++; -- cgit v1.2.3