]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
(closes issue #12965)
authorJeff Peeler <jpeeler@digium.com>
Fri, 12 Sep 2008 22:22:28 +0000 (22:22 +0000)
committerJeff Peeler <jpeeler@digium.com>
Fri, 12 Sep 2008 22:22:28 +0000 (22:22 +0000)
Reported by: rlsutton2

Prevents local channels from playing MOH at each other which was causing ast_generic_bridge to loop much faster.

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

channels/chan_local.c

index 783e973e03c1ed350f55213b12bc9e879e2b0a9b..1c4eaf56b9c949769131f5ca1d761f7552b271fd 100644 (file)
@@ -168,6 +168,10 @@ static int local_queue_frame(struct local_pvt *p, int isoutbound, struct ast_fra
        /* Recalculate outbound channel */
        other = isoutbound ? p->owner : p->chan;
 
+       /* do not queue frame if generator is on both local channels */
+       if (us && us->generator && other->generator)
+               return 0;
+
        /* Set glare detection */
        ast_set_flag(p, LOCAL_GLARE_DETECT);
        if (ast_test_flag(p, LOCAL_CANCEL_QUEUE)) {