Add the same fix from revision 123271 to container_destruct_debug.
authorMark Michelson <mmichelson@digium.com>
Tue, 17 Jun 2008 20:19:49 +0000 (20:19 +0000)
committerMark Michelson <mmichelson@digium.com>
Tue, 17 Jun 2008 20:19:49 +0000 (20:19 +0000)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@123456 65c4cc65-6c06-0410-ace0-fbb531ad65f3

main/astobj2.c

index 0bba65f..e9e2db7 100644 (file)
@@ -828,9 +828,18 @@ static void container_destruct(void *_c)
 static void container_destruct_debug(void *_c)
 {
        struct ao2_container *c = _c;
+       int i;
 
        _ao2_callback_debug(c, OBJ_UNLINK, cd_cb_debug, NULL, "container_destruct_debug called", __FILE__, __LINE__, __PRETTY_FUNCTION__);
 
+       for (i = 0; i < c->n_buckets; i++) {
+               struct bucket_list *cur;
+
+               while ((cur = AST_LIST_REMOVE_HEAD(&c->buckets[i], entry))) {
+                       ast_free(cur);
+               }
+       }
+
 #ifdef AO2_DEBUG
        ast_atomic_fetchadd_int(&ao2.total_containers, -1);
 #endif