Opaquify ast_channel structs and lists

Review: https://reviewboard.asterisk.org/r/1773/


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@357542 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Terry Wilson
2012-02-29 16:52:47 +00:00
parent 0b988da21c
commit a9d607a357
75 changed files with 1188 additions and 1090 deletions

View File

@@ -48,7 +48,7 @@ struct ast_autochan *ast_autochan_setup(struct ast_channel *chan)
autochan->chan = ast_channel_ref(chan);
ast_channel_lock(autochan->chan);
AST_LIST_INSERT_TAIL(&autochan->chan->autochans, autochan, list);
AST_LIST_INSERT_TAIL(ast_channel_autochans(autochan->chan), autochan, list);
ast_channel_unlock(autochan->chan);
ast_debug(1, "Created autochan %p to hold channel %s (%p)\n", autochan, ast_channel_name(chan), chan);
@@ -61,7 +61,7 @@ void ast_autochan_destroy(struct ast_autochan *autochan)
struct ast_autochan *autochan_iter;
ast_channel_lock(autochan->chan);
AST_LIST_TRAVERSE_SAFE_BEGIN(&autochan->chan->autochans, autochan_iter, list) {
AST_LIST_TRAVERSE_SAFE_BEGIN(ast_channel_autochans(autochan->chan), autochan_iter, list) {
if (autochan_iter == autochan) {
AST_LIST_REMOVE_CURRENT(list);
ast_debug(1, "Removed autochan %p from the list, about to free it\n", autochan);
@@ -80,9 +80,9 @@ void ast_autochan_new_channel(struct ast_channel *old_chan, struct ast_channel *
{
struct ast_autochan *autochan;
AST_LIST_APPEND_LIST(&new_chan->autochans, &old_chan->autochans, list);
AST_LIST_APPEND_LIST(ast_channel_autochans(new_chan), ast_channel_autochans(old_chan), list);
AST_LIST_TRAVERSE(&new_chan->autochans, autochan, list) {
AST_LIST_TRAVERSE(ast_channel_autochans(new_chan), autochan, list) {
if (autochan->chan == old_chan) {
autochan->chan = ast_channel_unref(old_chan);
autochan->chan = ast_channel_ref(new_chan);