[asterisk-commits] mnicholson: branch 1.8 r322807 - /branches/1.8/channels/chan_sip.c

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Thu Jun 9 12:37:18 CDT 2011


Author: mnicholson
Date: Thu Jun  9 12:37:07 2011
New Revision: 322807

URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=322807
Log:
don't drop any voice frames when checking for T.38 during early media

(closes ASTERISK-17705)
Review: https://reviewboard.asterisk.org/r/1186/

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=322807&r1=322806&r2=322807
==============================================================================
--- branches/1.8/channels/chan_sip.c (original)
+++ branches/1.8/channels/chan_sip.c Thu Jun  9 12:37:07 2011
@@ -6294,7 +6294,11 @@
 		}
 		if (p) {
 			sip_pvt_lock(p);
-			if (p->rtp) {
+			if (p->t38.state == T38_ENABLED) {
+				/* drop frame, can't sent VOICE frames while in T.38 mode */
+				sip_pvt_unlock(p);
+				break;
+			} else if (p->rtp) {
 				/* If channel is not up, activate early media session */
 				if ((ast->_state != AST_STATE_UP) &&
 				    !ast_test_flag(&p->flags[0], SIP_PROGRESS_SENT) &&
@@ -6305,12 +6309,9 @@
 						transmit_provisional_response(p, "183 Session Progress", &p->initreq, TRUE);
 						ast_set_flag(&p->flags[0], SIP_PROGRESS_SENT);
 					}
-				} else if (p->t38.state == T38_ENABLED) {
-					/* drop frame, can't sent VOICE frames while in T.38 mode */
-				} else {
-					p->lastrtptx = time(NULL);
-					res = ast_rtp_instance_write(p->rtp, frame);
 				}
+				p->lastrtptx = time(NULL);
+				res = ast_rtp_instance_write(p->rtp, frame);
 			}
 			sip_pvt_unlock(p);
 		}




More information about the asterisk-commits mailing list