gnunet

Main GNUnet Logic
Log | Files | Refs | Submodules | README | LICENSE

commit b56fbb9f87a5c16f39ae974bc192a78d28e5931e
parent 661e811fef7d0ef6b62892a87ec3723edb0ca3bc
Author: Christian Fuchs <christian.fuchs@cfuchs.net>
Date:   Mon, 26 May 2014 15:25:17 +0000

- removed double-free after set has freed its set already

Diffstat:
Msrc/scalarproduct/gnunet-service-scalarproduct.c | 5+++--
1 file changed, 3 insertions(+), 2 deletions(-)

diff --git 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++;