[asterisk-commits] kmoore: branch 1.8 r328935 - /branches/1.8/channels/chan_sip.c

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Wed Jul 20 14:00:28 CDT 2011


Author: kmoore
Date: Wed Jul 20 14:00:23 2011
New Revision: 328935

URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=328935
Log:
Inband DTMF regression

The functionality of inband DTMF in chan_sip relied upon
ast_rtp_instance_dtmf_mode_get/set not working properly to avoid calling
ast_rtp_instance_dtmf_begin/end on RTP streams with inband DTMF. According to
documentation, ast_rtp_instance_dtmf_begin/end is meant only for RFC2833 DTMF,
never inband.  This fixes the regression introduced in revision 328823.

Modified:
    branches/1.8/channels/chan_sip.c

Modified: branches/1.8/channels/chan_sip.c
URL: http://svnview.digium.com/svn/asterisk/branches/1.8/channels/chan_sip.c?view=diff&rev=328935&r1=328934&r2=328935
==============================================================================
--- branches/1.8/channels/chan_sip.c (original)
+++ branches/1.8/channels/chan_sip.c Wed Jul 20 14:00:23 2011
@@ -6486,11 +6486,7 @@
 	sip_pvt_lock(p);
 	switch (ast_test_flag(&p->flags[0], SIP_DTMF)) {
 	case SIP_DTMF_INBAND:
-		if (p->rtp && ast_rtp_instance_dtmf_mode_get(p->rtp) == AST_RTP_DTMF_MODE_INBAND) {
-			ast_rtp_instance_dtmf_begin(p->rtp, digit);
-		} else {
-			res = -1; /* Tell Asterisk to generate inband indications */
-		}
+		res = -1; /* Tell Asterisk to generate inband indications */
 		break;
 	case SIP_DTMF_RFC2833:
 		if (p->rtp)
@@ -6522,11 +6518,7 @@
 			ast_rtp_instance_dtmf_end_with_duration(p->rtp, digit, duration);
 		break;
 	case SIP_DTMF_INBAND:
-		if (p->rtp && ast_rtp_instance_dtmf_mode_get(p->rtp) == AST_RTP_DTMF_MODE_INBAND) {
-			ast_rtp_instance_dtmf_end(p->rtp, digit);
-		} else {
-			res = -1; /* Tell Asterisk to stop inband indications */
-		}
+		res = -1; /* Tell Asterisk to stop inband indications */
 		break;
 	}
 	sip_pvt_unlock(p);




More information about the asterisk-commits mailing list