diff options
author | Jan Hutter <jhutter@hsr.ch> | 2005-11-08 07:04:15 +0000 |
---|---|---|
committer | Jan Hutter <jhutter@hsr.ch> | 2005-11-08 07:04:15 +0000 |
commit | 6e67d74a9b511b16c7482a7ffe2f2d8c66fde24b (patch) | |
tree | 3194e48555ad6336c014e12d399a2085a4b2dfa0 | |
parent | 01d06501d9b15b3aab24ef3b9455dc2b8840666a (diff) | |
download | strongswan-6e67d74a9b511b16c7482a7ffe2f2d8c66fde24b.tar.bz2 strongswan-6e67d74a9b511b16c7482a7ffe2f2d8c66fde24b.tar.xz |
- LEAK_DETECTIVE activated
- memory leak in event_queue_t fixed
-rw-r--r-- | Source/charon/event_queue.c | 5 | ||||
-rw-r--r-- | Source/charon/tests/event_queue_test.c | 2 | ||||
-rw-r--r-- | Source/charon/tests/job_queue_test.c | 6 | ||||
-rw-r--r-- | Source/charon/tests/sender_test.c | 2 |
4 files changed, 8 insertions, 7 deletions
diff --git a/Source/charon/event_queue.c b/Source/charon/event_queue.c index 132e489a5..243186c40 100644 --- a/Source/charon/event_queue.c +++ b/Source/charon/event_queue.c @@ -280,6 +280,7 @@ static status_t add_absolute(private_event_queue_t *this, job_t *job, timeval_t status = iterator->has_next(iterator,&has_next); if (status != SUCCESS) { + iterator->destroy(iterator); break; } @@ -295,8 +296,7 @@ static status_t add_absolute(private_event_queue_t *this, job_t *job, timeval_t if (time_difference(&(event->time), &(current_event->time)) <= 0) { /* my event has to be fired before the current event in list */ - status = this->list->insert_before(this->list,current_list_element,event); - + status = this->list->insert_before(this->list,current_list_element,event); break; } @@ -306,6 +306,7 @@ static status_t add_absolute(private_event_queue_t *this, job_t *job, timeval_t break; } } + iterator->destroy(iterator); break; } diff --git a/Source/charon/tests/event_queue_test.c b/Source/charon/tests/event_queue_test.c index 2cad71c42..b06b16b00 100644 --- a/Source/charon/tests/event_queue_test.c +++ b/Source/charon/tests/event_queue_test.c @@ -30,7 +30,7 @@ /** * Number of different times to insert per thread */ -#define EVENT_QUEUE_TIMES 10 +#define EVENT_QUEUE_TIMES 5 /** * Number of entries per time per thread */ diff --git a/Source/charon/tests/job_queue_test.c b/Source/charon/tests/job_queue_test.c index 1fd335750..b38113319 100644 --- a/Source/charon/tests/job_queue_test.c +++ b/Source/charon/tests/job_queue_test.c @@ -104,7 +104,7 @@ void test_job_queue(tester_t *tester) test_infos.tester = tester; test_infos.job_queue = job_queue; test_infos.insert_item_count = 10000; - test_infos.remove_item_count = 10000; + test_infos.remove_item_count = 50000; desired_value = test_infos.insert_item_count * sender_count - @@ -130,9 +130,9 @@ void test_job_queue(tester_t *tester) pthread_join(receiver_threads[i], NULL); } - /* the job-queue has to have disered_value count entries! */ tester->assert_true(tester,(job_queue->get_count(job_queue,&value) == SUCCESS), "get count call check"); - tester->assert_true(tester,(value == desired_value), "get count value check"); + tester->assert_true(tester,(value == desired_value), "get count value check"); + tester->assert_true(tester,(job_queue->destroy(job_queue) == SUCCESS), "destroy call check"); } diff --git a/Source/charon/tests/sender_test.c b/Source/charon/tests/sender_test.c index 580320b94..f0e3820f0 100644 --- a/Source/charon/tests/sender_test.c +++ b/Source/charon/tests/sender_test.c @@ -33,7 +33,7 @@ /** * Number of packets to send by sender-thread */ -#define NUMBER_OF_PACKETS_TO_SEND 400 +#define NUMBER_OF_PACKETS_TO_SEND 50 /** * Port to send the packets to |