[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r22759 - gnunet/src/mesh
From: |
gnunet |
Subject: |
[GNUnet-SVN] r22759 - gnunet/src/mesh |
Date: |
Wed, 18 Jul 2012 17:38:36 +0200 |
Author: bartpolot
Date: 2012-07-18 17:38:36 +0200 (Wed, 18 Jul 2012)
New Revision: 22759
Modified:
gnunet/src/mesh/gnunet-service-mesh.c
Log:
- fix memleaks in regex
Modified: gnunet/src/mesh/gnunet-service-mesh.c
===================================================================
--- gnunet/src/mesh/gnunet-service-mesh.c 2012-07-18 15:31:49 UTC (rev
22758)
+++ gnunet/src/mesh/gnunet-service-mesh.c 2012-07-18 15:38:36 UTC (rev
22759)
@@ -4627,7 +4627,6 @@
struct MeshRegexSearchContext *ctx = cls;
struct MeshRegexSearchInfo *info = ctx->info;
void *copy;
- char *proof;
size_t len;
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
@@ -4641,13 +4640,16 @@
GNUNET_CONTAINER_multihashmap_put(info->dht_get_results, key,
copy,
GNUNET_CONTAINER_MULTIHASHMAPOPTION_MULTIPLE));
len = ntohl (block->n_proof);
- proof = GNUNET_malloc (len + 1);
- memcpy (proof, &block[1], len);
- proof[len] = '\0';
- if (GNUNET_OK != GNUNET_REGEX_check_proof (proof, key))
{
- GNUNET_break_op (0);
- return;
+ char proof[len + 1];
+
+ memcpy (proof, &block[1], len);
+ proof[len] = '\0';
+ if (GNUNET_OK != GNUNET_REGEX_check_proof (proof, key))
+ {
+ GNUNET_break_op (0);
+ return;
+ }
}
len = strlen (info->description);
if (len == ctx->position) // String processed
@@ -4737,6 +4739,7 @@
{
GNUNET_free (c->regexes[i]);
}
+ GNUNET_free (c->regexes);
if (GNUNET_SCHEDULER_NO_TASK != c->regex_announce_task)
GNUNET_SCHEDULER_cancel (c->regex_announce_task);
next = c->next;
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r22759 - gnunet/src/mesh,
gnunet <=