aboutsummaryrefslogtreecommitdiffstats
path: root/src/charon/queues/job_queue.c
diff options
context:
space:
mode:
authorMartin Willi <martin@strongswan.org>2006-10-24 08:46:17 +0000
committerMartin Willi <martin@strongswan.org>2006-10-24 08:46:17 +0000
commit55bbff11ec96f74b27afc36dd8ca3e34ff425b40 (patch)
tree9d0ff1aad70e01718405a8da314d22a86b072947 /src/charon/queues/job_queue.c
parent5c4cc9a4e328d86867959dec0e082f7e4f098a6e (diff)
downloadstrongswan-55bbff11ec96f74b27afc36dd8ca3e34ff425b40.tar.bz2
strongswan-55bbff11ec96f74b27afc36dd8ca3e34ff425b40.tar.xz
linked list cleanups
added list methods invoke(), destroy_offset(), destroy_function() simplified list destruction when destroying its items
Diffstat (limited to 'src/charon/queues/job_queue.c')
-rw-r--r--src/charon/queues/job_queue.c9
1 files changed, 1 insertions, 8 deletions
diff --git a/src/charon/queues/job_queue.c b/src/charon/queues/job_queue.c
index d33cd5ae4..2310ca6ff 100644
--- a/src/charon/queues/job_queue.c
+++ b/src/charon/queues/job_queue.c
@@ -114,14 +114,7 @@ static void add(private_job_queue_t *this, job_t *job)
*/
static void job_queue_destroy (private_job_queue_t *this)
{
- job_t *job;
- while (this->list->remove_last(this->list, (void**)&job) == SUCCESS)
- {
- job->destroy(job);
- }
- this->list->destroy(this->list);
- pthread_mutex_destroy(&(this->mutex));
- pthread_cond_destroy(&(this->condvar));
+ this->list->destroy_offset(this->list, offsetof(job_t, destroy));
free(this);
}