From: Christian Grothoff Date: Thu, 7 Jul 2011 09:30:02 +0000 (+0000) Subject: fix X-Git-Tag: initial-import-from-subversion-38251~17955 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=b9499579bee2eff59d998ae0546a84b40fa5bebd;p=oweals%2Fgnunet.git fix --- diff --git a/src/util/client.c b/src/util/client.c index b57b7bb4a..629e8c872 100644 --- a/src/util/client.c +++ b/src/util/client.c @@ -426,27 +426,27 @@ GNUNET_CLIENT_disconnect (struct GNUNET_CLIENT_Connection *sock, GNUNET_CONNECTION_receive_cancel (sock->sock); sock->in_receive = GNUNET_NO; } + if (sock->th != NULL) + { + GNUNET_CLIENT_notify_transmit_ready_cancel (sock->th); + sock->th = NULL; + } if (NULL != sock->sock) { GNUNET_CONNECTION_destroy (sock->sock, finish_pending_write); sock->sock = NULL; } + if (sock->receive_task != GNUNET_SCHEDULER_NO_TASK) + { + GNUNET_SCHEDULER_cancel (sock->receive_task); + sock->receive_task = GNUNET_SCHEDULER_NO_TASK; + } if (sock->tag != NULL) { GNUNET_free (sock->tag); sock->tag = NULL; } sock->receiver_handler = NULL; - if (sock->th != NULL) - { - GNUNET_CLIENT_notify_transmit_ready_cancel (sock->th); - sock->th = NULL; - } - if (sock->receive_task != GNUNET_SCHEDULER_NO_TASK) - { - GNUNET_SCHEDULER_cancel (sock->receive_task); - sock->receive_task = GNUNET_SCHEDULER_NO_TASK; - } GNUNET_array_grow (sock->received_buf, sock->received_size, 0); GNUNET_free (sock->service_name); GNUNET_free (sock);