summaryrefslogtreecommitdiff
path: root/src/mesh
diff options
context:
space:
mode:
authorBart Polot <bart@net.in.tum.de>2011-10-27 01:29:44 +0000
committerBart Polot <bart@net.in.tum.de>2011-10-27 01:29:44 +0000
commit19780f69c439907bbe4d35265ac1b7ad092c50cd (patch)
treead474a2cd18aded43d91cc9cadc403db24670ab4 /src/mesh
parenta5777dcaa4cd80af1f0a25475e74feec41793218 (diff)
Attempt to fix assertion failures on buildbot related to RC of client (keep/drop)
Diffstat (limited to 'src/mesh')
-rw-r--r--src/mesh/gnunet-service-mesh.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/mesh/gnunet-service-mesh.c b/src/mesh/gnunet-service-mesh.c
index 40f1d139b..59c5174ac 100644
--- a/src/mesh/gnunet-service-mesh.c
+++ b/src/mesh/gnunet-service-mesh.c
@@ -3248,7 +3248,6 @@ handle_local_client_disconnect (void *cls, struct GNUNET_SERVER_Client *client)
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "MESH: (SERVER DOWN)\n");
return;
}
- GNUNET_SERVER_client_drop (client);
c = clients;
while (NULL != c)
{
@@ -3259,6 +3258,7 @@ handle_local_client_disconnect (void *cls, struct GNUNET_SERVER_Client *client)
continue;
}
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "MESH: matching client found\n");
+ GNUNET_SERVER_client_drop (c->handle);
if (NULL != c->tunnels)
{
GNUNET_CONTAINER_multihashmap_iterate (c->tunnels,
@@ -3314,7 +3314,6 @@ handle_local_new_client (void *cls, struct GNUNET_SERVER_Client *client,
uint16_t i;
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "MESH: new client connected\n");
- GNUNET_SERVER_client_keep (client);
/* Check data sanity */
size = ntohs (message->size) - sizeof (struct GNUNET_MESH_ClientConnect);
cc_msg = (struct GNUNET_MESH_ClientConnect *) message;
@@ -3335,6 +3334,7 @@ handle_local_new_client (void *cls, struct GNUNET_SERVER_Client *client,
#endif
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "MESH: CLIENT NEW %u at %p\n", c->id, c);
c->handle = client;
+ GNUNET_SERVER_client_keep (client);
a = (GNUNET_MESH_ApplicationType *) &cc_msg[1];
if (napps > 0)
{