[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r11331 - gnunet/src/util
From: |
gnunet |
Subject: |
[GNUnet-SVN] r11331 - gnunet/src/util |
Date: |
Tue, 11 May 2010 21:16:47 +0200 |
Author: grothoff
Date: 2010-05-11 21:16:47 +0200 (Tue, 11 May 2010)
New Revision: 11331
Modified:
gnunet/src/util/client.c
gnunet/src/util/connection.c
Log:
asserts
Modified: gnunet/src/util/client.c
===================================================================
--- gnunet/src/util/client.c 2010-05-11 19:08:27 UTC (rev 11330)
+++ gnunet/src/util/client.c 2010-05-11 19:16:47 UTC (rev 11331)
@@ -34,7 +34,7 @@
#include "gnunet_server_lib.h"
#include "gnunet_scheduler_lib.h"
-#define DEBUG_CLIENT GNUNET_NO
+#define DEBUG_CLIENT GNUNET_YES
/**
* How often do we re-try tranmsitting requests before giving up?
Modified: gnunet/src/util/connection.c
===================================================================
--- gnunet/src/util/connection.c 2010-05-11 19:08:27 UTC (rev 11330)
+++ gnunet/src/util/connection.c 2010-05-11 19:16:47 UTC (rev 11331)
@@ -245,6 +245,11 @@
GNUNET_SCHEDULER_TaskIdentifier write_task;
/**
+ * Destroy task (if already scheduled).
+ */
+ GNUNET_SCHEDULER_TaskIdentifier destroy_task;
+
+ /**
* Handle to a pending DNS lookup request.
*/
struct GNUNET_RESOLVER_RequestHandle *dns_active;
@@ -472,7 +477,8 @@
struct GNUNET_CONNECTION_Handle *sock = cls;
GNUNET_CONNECTION_TransmitReadyNotify notify;
struct AddressProbe *pos;
-
+
+ sock->destroy_task = GNUNET_SCHEDULER_NO_TASK;
GNUNET_assert (sock->dns_active == NULL);
if (0 != (sock->ccs & COCO_TRANSMIT_READY))
{
@@ -489,9 +495,11 @@
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
"Destroy waits for write_task to be done (%p)\n", sock);
#endif
- GNUNET_SCHEDULER_add_after (sock->sched,
- sock->write_task,
- &destroy_continuation, sock);
+ GNUNET_assert (GNUNET_SCHEDULER_NO_TASK == sock->destroy_task);
+ sock->destroy_task
+ = GNUNET_SCHEDULER_add_after (sock->sched,
+ sock->write_task,
+ &destroy_continuation, sock);
return;
}
if (0 != (sock->ccs & COCO_RECEIVE_AGAIN))
@@ -510,9 +518,11 @@
}
if (sock->read_task != GNUNET_SCHEDULER_NO_TASK)
{
- GNUNET_SCHEDULER_add_after (sock->sched,
- sock->read_task,
- &destroy_continuation, sock);
+ GNUNET_assert (GNUNET_SCHEDULER_NO_TASK == sock->destroy_task);
+ sock->destroy_task
+ = GNUNET_SCHEDULER_add_after (sock->sched,
+ sock->read_task,
+ &destroy_continuation, sock);
return;
}
#if DEBUG_CONNECTION
@@ -549,6 +559,7 @@
}
GNUNET_free_non_null (sock->addr);
GNUNET_free_non_null (sock->hostname);
+ GNUNET_assert (GNUNET_SCHEDULER_NO_TASK == sock->destroy_task);
#if DEBUG_CONNECTION
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
"Freeing memory of connection %p.\n", sock);
@@ -625,9 +636,11 @@
h);
#endif
h->ccs -= COCO_DESTROY_CONTINUATION;
- GNUNET_SCHEDULER_add_continuation (h->sched,
- &destroy_continuation,
- h, GNUNET_SCHEDULER_REASON_TIMEOUT);
+ GNUNET_assert (GNUNET_SCHEDULER_NO_TASK == h->destroy_task);
+ h->destroy_task
+ = GNUNET_SCHEDULER_add_now (h->sched,
+ &destroy_continuation,
+ h);
}
}
@@ -683,10 +696,11 @@
h);
#endif
h->ccs -= COCO_DESTROY_CONTINUATION;
- GNUNET_SCHEDULER_add_continuation (h->sched,
- &destroy_continuation,
- h,
- GNUNET_SCHEDULER_REASON_PREREQ_DONE);
+ GNUNET_assert (GNUNET_SCHEDULER_NO_TASK == h->destroy_task);
+ h->destroy_task
+ = GNUNET_SCHEDULER_add_now (h->sched,
+ &destroy_continuation,
+ h);
}
}
@@ -974,8 +988,10 @@
sock->dns_active = NULL;
}
GNUNET_assert (sock->sched != NULL);
- GNUNET_SCHEDULER_add_now (sock->sched,
- &destroy_continuation, sock);
+ GNUNET_assert (GNUNET_SCHEDULER_NO_TASK == sock->destroy_task);
+ sock->destroy_task
+ = GNUNET_SCHEDULER_add_now (sock->sched,
+ &destroy_continuation, sock);
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r11331 - gnunet/src/util,
gnunet <=