From: Joshua Colp Date: Tue, 1 Apr 2008 18:06:13 +0000 (+0000) Subject: Merged revisions 112209 via svnmerge from X-Git-Tag: 1.6.2.0-beta1~2573 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=0d7cfae6b6fdaf1716cc3d156750524d57fdde86;p=thirdparty%2Fasterisk.git Merged revisions 112209 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r112209 | file | 2008-04-01 15:02:43 -0300 (Tue, 01 Apr 2008) | 4 lines Disable Packet2Packet bridging when we need to feed DTMF frames into the core. Some implementations do not like how we switch between things. (closes issue #12212) Reported by: bamby ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@112210 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/main/rtp.c b/main/rtp.c index ff2b83f331..7db8fc4a0e 100644 --- a/main/rtp.c +++ b/main/rtp.c @@ -3826,9 +3826,9 @@ enum ast_bridge_result ast_rtp_bridge(struct ast_channel *c0, struct ast_channel audio_p1_res = AST_RTP_TRY_PARTIAL; } - /* If the core will need to compensate and the P2P bridge will need to feed up DTMF frames then we can not reliably do so yet, so do not P2P bridge */ - if ((audio_p0_res == AST_RTP_TRY_PARTIAL && ast_test_flag(p0, FLAG_P2P_NEED_DTMF) && ast_test_flag(p0, FLAG_DTMF_COMPENSATE)) || - (audio_p1_res == AST_RTP_TRY_PARTIAL && ast_test_flag(p1, FLAG_P2P_NEED_DTMF) && ast_test_flag(p1, FLAG_DTMF_COMPENSATE))) { + /* If we need to feed frames into the core don't do a P2P bridge */ + if ((audio_p0_res == AST_RTP_TRY_PARTIAL && ast_test_flag(p0, FLAG_P2P_NEED_DTMF)) || + (audio_p1_res == AST_RTP_TRY_PARTIAL && ast_test_flag(p1, FLAG_P2P_NEED_DTMF))) { ast_channel_unlock(c0); ast_channel_unlock(c1); return AST_BRIDGE_FAILED_NOWARN;