From 5611ff040e38d7d33e15042fe446604b5f0c30e3 Mon Sep 17 00:00:00 2001 From: Mark Spencer Date: Fri, 11 Feb 2005 20:07:45 +0000 Subject: [PATCH] Fix native bridge not to intercept DTMF if it's needed git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@5009 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- channels/chan_iax2.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/channels/chan_iax2.c b/channels/chan_iax2.c index 4375507fb1..b5d44aee1d 100755 --- a/channels/chan_iax2.c +++ b/channels/chan_iax2.c @@ -2712,11 +2712,13 @@ static int iax2_bridge(struct ast_channel *c0, struct ast_channel *c1, int flags unsigned short callno0 = PTR_TO_CALLNO(c0->pvt->pvt); unsigned short callno1 = PTR_TO_CALLNO(c1->pvt->pvt); struct timeval waittimer = {0, 0}, tv; - + lock_both(callno0, callno1); /* Put them in native bridge mode */ - iaxs[callno0]->bridgecallno = callno1; - iaxs[callno1]->bridgecallno = callno0; + if (!flags & (AST_BRIDGE_DTMF_CHANNEL_0 | AST_BRIDGE_DTMF_CHANNEL_1)) { + iaxs[callno0]->bridgecallno = callno1; + iaxs[callno1]->bridgecallno = callno0; + } unlock_both(callno0, callno1); /* If not, try to bridge until we can execute a transfer, if we can */