From c082bbd13bbc64c4d30b61496e068306afbd823f Mon Sep 17 00:00:00 2001 From: Sree Harsha Totakura Date: Wed, 10 Apr 2013 09:33:35 +0000 Subject: - more test cases --- src/testbed/testbed_api_operations.c | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) (limited to 'src/testbed/testbed_api_operations.c') diff --git a/src/testbed/testbed_api_operations.c b/src/testbed/testbed_api_operations.c index fc5da29b5..72d1733c9 100644 --- a/src/testbed/testbed_api_operations.c +++ b/src/testbed/testbed_api_operations.c @@ -635,7 +635,7 @@ recheck_waiting (struct OperationQueue *opq) struct QueueEntry *entry2; entry = opq->wq_head; - while ( (NULL != entry) && (opq->active < opq->max_active) ) + while (NULL != entry) { entry2 = entry->next; check_readiness (entry->op); @@ -741,8 +741,20 @@ GNUNET_TESTBED_operation_begin_wait_ (struct GNUNET_TESTBED_Operation *op) void GNUNET_TESTBED_operation_inactivate_ (struct GNUNET_TESTBED_Operation *op) { + struct OperationQueue **queues; + size_t ms; + unsigned int nqueues; + unsigned int i; + GNUNET_assert (OP_STATE_STARTED == op->state); change_state (op, OP_STATE_INACTIVE); + nqueues = op->nqueues; + ms = sizeof (struct OperationQueue *) * nqueues; + queues = GNUNET_malloc (ms); + GNUNET_assert (NULL != (queues = memcpy (queues, op->queues, ms))); + for (i = 0; i < nqueues; i++) + recheck_waiting (queues[i]); + GNUNET_free (queues); } @@ -756,6 +768,7 @@ GNUNET_TESTBED_operation_inactivate_ (struct GNUNET_TESTBED_Operation *op) void GNUNET_TESTBED_operation_activate_ (struct GNUNET_TESTBED_Operation *op) { + GNUNET_assert (OP_STATE_INACTIVE == op->state); change_state (op, OP_STATE_STARTED); } -- cgit v1.2.3