diff -r 9d489b1039b2 -r bca23cbe1dce src/irc_queue.c --- a/src/irc_queue.c Mon Mar 30 16:31:24 2009 +0300 +++ b/src/irc_queue.c Mon Mar 30 16:44:00 2009 +0300 @@ -226,3 +226,20 @@ } } +void irc_queue_destroy (struct irc_queue *queue) +{ + struct irc_queue_entry *entry, *next; + + // free all entries + for (entry = TAILQ_FIRST(&queue->list); entry; entry = next) { + next = TAILQ_NEXT(entry, queue_list); + free(entry); + } + + // the event + event_free(queue->ev); + + // the queue itself + free(queue); +} +