From f1f603c7d0b3f03dca46a4f313472288eb080eb1 Mon Sep 17 00:00:00 2001 From: Christian Grothoff Date: Wed, 24 Dec 2014 01:10:47 +0000 Subject: making GNUNET_SCHEDULER_cancel() perform in O(1) instead of O(n) to help or even fully address #3247 --- src/gns/gns_api.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'src/gns/gns_api.c') diff --git a/src/gns/gns_api.c b/src/gns/gns_api.c index 9f7f28b71..327f89976 100644 --- a/src/gns/gns_api.c +++ b/src/gns/gns_api.c @@ -154,7 +154,7 @@ struct GNUNET_GNS_Handle /** * Reconnect task */ - GNUNET_SCHEDULER_TaskIdentifier reconnect_task; + struct GNUNET_SCHEDULER_Task * reconnect_task; /** * How long do we wait until we try to reconnect? @@ -210,7 +210,7 @@ reconnect_task (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc) { struct GNUNET_GNS_Handle *handle = cls; - handle->reconnect_task = GNUNET_SCHEDULER_NO_TASK; + handle->reconnect_task = NULL; reconnect (handle); } @@ -484,10 +484,10 @@ GNUNET_GNS_disconnect (struct GNUNET_GNS_Handle *handle) GNUNET_CLIENT_disconnect (handle->client); handle->client = NULL; } - if (GNUNET_SCHEDULER_NO_TASK != handle->reconnect_task) + if (NULL != handle->reconnect_task) { GNUNET_SCHEDULER_cancel (handle->reconnect_task); - handle->reconnect_task = GNUNET_SCHEDULER_NO_TASK; + handle->reconnect_task = NULL; } GNUNET_assert (NULL == handle->lookup_head); GNUNET_free (handle); -- cgit v1.2.3