Merged revisions 57318 via svnmerge from
authorJoshua Colp <jcolp@digium.com>
Thu, 1 Mar 2007 22:23:26 +0000 (22:23 +0000)
committerJoshua Colp <jcolp@digium.com>
Thu, 1 Mar 2007 22:23:26 +0000 (22:23 +0000)
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r57318 | file | 2007-03-01 17:21:44 -0500 (Thu, 01 Mar 2007) | 10 lines

Merged revisions 57317 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r57317 | file | 2007-03-01 17:19:32 -0500 (Thu, 01 Mar 2007) | 2 lines

Don't even attempt to optimize things when a proxy channel is involved. It will just explode in weird and unexplaineable ways. (issue #9175 reported by clegall_proformatique)

........

................

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@57319 65c4cc65-6c06-0410-ace0-fbb531ad65f3

channels/chan_local.c

index 8d96327..017daba 100644 (file)
@@ -220,7 +220,7 @@ static int local_answer(struct ast_channel *ast)
 
 static void check_bridge(struct local_pvt *p, int isoutbound)
 {
-       if (ast_test_flag(p, LOCAL_ALREADY_MASQED) || ast_test_flag(p, LOCAL_NO_OPTIMIZATION) || !p->chan || !p->owner)
+       if (ast_test_flag(p, LOCAL_ALREADY_MASQED) || ast_test_flag(p, LOCAL_NO_OPTIMIZATION) || !p->chan || !p->owner || (p->chan->_bridge != ast_bridged_channel(p->chan)))
                return;
 
        /* only do the masquerade if we are being called on the outbound channel,