diff options
author | Christian Grothoff <christian@grothoff.org> | 2012-06-02 17:00:43 +0000 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2012-06-02 17:00:43 +0000 |
commit | de7d8184873d8b25dd81cfcff2d1f3df77060ee8 (patch) | |
tree | 2f91c128eadabc6f1510f338aa7a74c92235903a /src/util/server.c | |
parent | 25df1e14ddcc650e979efa6073644de2e5f4bf55 (diff) | |
download | gnunet-de7d8184873d8b25dd81cfcff2d1f3df77060ee8.tar.gz gnunet-de7d8184873d8b25dd81cfcff2d1f3df77060ee8.zip |
-hopefully fixing #2390
Diffstat (limited to 'src/util/server.c')
-rw-r--r-- | src/util/server.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/util/server.c b/src/util/server.c index 672903486..b1edf2c45 100644 --- a/src/util/server.c +++ b/src/util/server.c | |||
@@ -1389,7 +1389,13 @@ GNUNET_SERVER_client_disconnect (struct GNUNET_SERVER_Client *client) | |||
1389 | GNUNET_SERVER_notify_transmit_ready_cancel (&client->th); | 1389 | GNUNET_SERVER_notify_transmit_ready_cancel (&client->th); |
1390 | (void) GNUNET_SCHEDULER_add_now (&destroy_connection, | 1390 | (void) GNUNET_SCHEDULER_add_now (&destroy_connection, |
1391 | client->connection); | 1391 | client->connection); |
1392 | GNUNET_assert (GNUNET_SCHEDULER_NO_TASK == client->warn_task); | 1392 | /* need to cancel again, as it might have been re-added |
1393 | in the meantime (i.e. during callbacks) */ | ||
1394 | if (GNUNET_SCHEDULER_NO_TASK != client->warn_task) | ||
1395 | { | ||
1396 | GNUNET_SCHEDULER_cancel (client->warn_task); | ||
1397 | client->warn_task = GNUNET_SCHEDULER_NO_TASK; | ||
1398 | } | ||
1393 | GNUNET_assert (GNUNET_NO == client->receive_pending); | 1399 | GNUNET_assert (GNUNET_NO == client->receive_pending); |
1394 | GNUNET_free (client); | 1400 | GNUNET_free (client); |
1395 | /* we might be in soft-shutdown, test if we're done */ | 1401 | /* we might be in soft-shutdown, test if we're done */ |