Author: mmichelson
Date: Tue Jul 30 17:16:14 2013
New Revision: 395811

URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=395811
Log:
Remove ast_bridged_channel function calls from several places.


Modified:
    team/mmichelson/bridged_channel/funcs/func_channel.c
    team/mmichelson/bridged_channel/main/abstract_jb.c
    team/mmichelson/bridged_channel/main/channel.c
    team/mmichelson/bridged_channel/main/channel_internal_api.c
    team/mmichelson/bridged_channel/main/features.c

Modified: team/mmichelson/bridged_channel/funcs/func_channel.c
URL: 
http://svnview.digium.com/svn/asterisk/team/mmichelson/bridged_channel/funcs/func_channel.c?view=diff&rev=395811&r1=395810&r2=395811
==============================================================================
--- team/mmichelson/bridged_channel/funcs/func_channel.c (original)
+++ team/mmichelson/bridged_channel/funcs/func_channel.c Tue Jul 30 17:16:14 
2013
@@ -495,10 +495,10 @@
                }
                ast_channel_unlock(chan);
        } else if (!strcasecmp(data, "peer")) {
-               struct ast_channel *p;
-
-               ast_channel_lock(chan);
-               p = ast_bridged_channel(chan);
+               RAII_VAR(struct ast_channel *, p, NULL, ast_channel_cleanup);
+
+               ast_channel_lock(chan);
+               p = ast_channel_bridge_peer(chan);
                if (p || ast_channel_tech(chan)) /* dummy channel? if so, we 
hid the peer name in the language */
                        ast_copy_string(buf, (p ? ast_channel_name(p) : ""), 
len);
                else {

Modified: team/mmichelson/bridged_channel/main/abstract_jb.c
URL: 
http://svnview.digium.com/svn/asterisk/team/mmichelson/bridged_channel/main/abstract_jb.c?view=diff&rev=395811&r1=395810&r2=395811
==============================================================================
--- team/mmichelson/bridged_channel/main/abstract_jb.c (original)
+++ team/mmichelson/bridged_channel/main/abstract_jb.c Tue Jul 30 17:16:14 2013
@@ -409,7 +409,6 @@
        struct ast_jb_conf *jbconf = &jb->conf;
        const struct ast_jb_impl *jbimpl = jb->impl;
        void *jbobj;
-       struct ast_channel *bridged;
        long now;
        char logfile_pathname[20 + AST_JB_IMPL_NAME_SIZE + 2*AST_CHANNEL_NAME + 
1];
        char name1[AST_CHANNEL_NAME], name2[AST_CHANNEL_NAME], *tmp;
@@ -442,14 +441,15 @@
 
        /* Create a frame log file */
        if (ast_test_flag(jbconf, AST_JB_LOG)) {
+               RAII_VAR(struct ast_channel *, bridged, 
ast_channel_bridge_peer(chan), ast_channel_cleanup);
                char safe_logfile[30] = "/tmp/logfile-XXXXXX";
                int safe_fd;
+
                snprintf(name2, sizeof(name2), "%s", ast_channel_name(chan));
                if ((tmp = strchr(name2, '/'))) {
                        *tmp = '#';
                }
 
-               bridged = ast_bridged_channel(chan);
                /* We should always have bridged chan if a jitterbuffer is in 
use */
                ast_assert(bridged != NULL);
 

Modified: team/mmichelson/bridged_channel/main/channel.c
URL: 
http://svnview.digium.com/svn/asterisk/team/mmichelson/bridged_channel/main/channel.c?view=diff&rev=395811&r1=395810&r2=395811
==============================================================================
--- team/mmichelson/bridged_channel/main/channel.c (original)
+++ team/mmichelson/bridged_channel/main/channel.c Tue Jul 30 17:16:14 2013
@@ -2606,15 +2606,11 @@
 
 void ast_set_hangupsource(struct ast_channel *chan, const char *source, int 
force)
 {
-       struct ast_channel *bridge;
+       RAII_VAR(struct ast_channel *, bridge, ast_channel_bridge_peer(chan), 
ast_channel_cleanup);
 
        ast_channel_lock(chan);
        if (force || ast_strlen_zero(ast_channel_hangupsource(chan))) {
                ast_channel_hangupsource_set(chan, source);
-       }
-       bridge = ast_bridged_channel(chan);
-       if (bridge) {
-               ast_channel_ref(bridge);
        }
        ast_channel_unlock(chan);
 
@@ -2624,7 +2620,6 @@
                        ast_channel_hangupsource_set(bridge, source);
                }
                ast_channel_unlock(bridge);
-               ast_channel_unref(bridge);
        }
 }
 
@@ -3942,7 +3937,7 @@
                                        ast_debug(1, "Ignoring answer on an 
inbound call!\n");
                                        ast_frfree(f);
                                        f = &ast_null_frame;
-                               } else if (prestate == AST_STATE_UP && 
ast_bridged_channel(chan)) {
+                               } else if (prestate == AST_STATE_UP && 
ast_channel_is_bridged(chan)) {
                                        ast_debug(1, "Dropping duplicate 
answer!\n");
                                        ast_frfree(f);
                                        f = &ast_null_frame;
@@ -6766,8 +6761,7 @@
 
        ast_debug(1, "Done Masquerading %s (%d)\n", ast_channel_name(original), 
ast_channel_state(original));
 
-       if ((bridged = ast_bridged_channel(original))) {
-               ast_channel_ref(bridged);
+       if ((bridged = ast_channel_bridge_peer(original))) {
                ast_channel_unlock(original);
                ast_indicate(bridged, AST_CONTROL_SRCCHANGE);
                ast_channel_unref(bridged);

Modified: team/mmichelson/bridged_channel/main/channel_internal_api.c
URL: 
http://svnview.digium.com/svn/asterisk/team/mmichelson/bridged_channel/main/channel_internal_api.c?view=diff&rev=395811&r1=395810&r2=395811
==============================================================================
--- team/mmichelson/bridged_channel/main/channel_internal_api.c (original)
+++ team/mmichelson/bridged_channel/main/channel_internal_api.c Tue Jul 30 
17:16:14 2013
@@ -289,7 +289,6 @@
 int ast_channel_data_add_structure(struct ast_data *tree,
        struct ast_channel *chan, int add_bridged)
 {
-       struct ast_channel *bc;
        struct ast_data *data_bridged;
        struct ast_data *data_cdr;
        struct ast_data *data_flags;
@@ -308,7 +307,7 @@
        ast_data_add_structure(ast_channel, tree, chan);
 
        if (add_bridged) {
-               bc = ast_bridged_channel(chan);
+               RAII_VAR(struct ast_channel *, bc, 
ast_channel_bridge_peer(chan), ast_channel_cleanup);
                if (bc) {
                        data_bridged = ast_data_add_node(tree, "bridged");
                        if (!data_bridged) {

Modified: team/mmichelson/bridged_channel/main/features.c
URL: 
http://svnview.digium.com/svn/asterisk/team/mmichelson/bridged_channel/main/features.c?view=diff&rev=395811&r1=395810&r2=395811
==============================================================================
--- team/mmichelson/bridged_channel/main/features.c (original)
+++ team/mmichelson/bridged_channel/main/features.c Tue Jul 30 17:16:14 2013
@@ -1247,7 +1247,7 @@
                 * channel from the other side of the local.
                 */
                if (!strcasecmp(ast_channel_tech(peer)->type, "Local")) {
-                       struct ast_channel *tmpchan, *base_peer;
+                       struct ast_channel *tmpchan;
                        char other_side[AST_CHANNEL_NAME];
                        char *c;
 
@@ -1256,11 +1256,11 @@
                                *++c = '1';
                        }
                        if ((tmpchan = ast_channel_get_by_name(other_side))) {
-                               ast_channel_lock(tmpchan);
-                               if ((base_peer = ast_bridged_channel(tmpchan))) 
{
+                               RAII_VAR(struct ast_channel *, base_peer, 
ast_channel_bridge_peer(tmpchan), ast_channel_cleanup);
+
+                               if (base_peer) {
                                        ast_copy_string(pu->peername, 
ast_channel_name(base_peer), sizeof(pu->peername));
                                }
-                               ast_channel_unlock(tmpchan);
                                tmpchan = ast_channel_unref(tmpchan);
                        }
                } else {


--
_____________________________________________________________________
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

svn-commits mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/svn-commits

Reply via email to