From b9bbf0ae7ba5c548b0baf5469a9259ac963a0538 Mon Sep 17 00:00:00 2001 From: Michael Jumper Date: Thu, 6 Sep 2012 11:29:31 -0700 Subject: [PATCH] Implemented guac_pool_free_int. --- libguac/src/pool.c | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/libguac/src/pool.c b/libguac/src/pool.c index d8469ed5..f6873697 100644 --- a/libguac/src/pool.c +++ b/libguac/src/pool.c @@ -68,6 +68,21 @@ int guac_pool_next_int(guac_pool* pool) { } void guac_pool_free_int(guac_pool* pool, int value) { - /* STUB */ + + /* Allocate and initialize new returned value */ + guac_pool_int* pool_int = malloc(sizeof(guac_pool_int)); + pool_int->value = value; + pool_int->__next = NULL; + + /* If pool empty, store as sole entry. */ + if (pool->__tail == NULL) + pool->__head = pool->__tail = pool_int; + + /* Otherwise, append to end of pool. */ + else { + pool->__tail->__next = pool_int; + pool->__tail = pool_int; + } + }