[asterisk-commits] file: branch 1.4 r195095 - in /branches/1.4: channels/chan_sip.c main/rtp.c

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Mon May 18 08:53:45 CDT 2009


Author: file
Date: Mon May 18 08:53:39 2009
New Revision: 195095

URL: http://svn.asterisk.org/svn-view/asterisk?view=rev&rev=195095
Log:
Fix a bug where the codecs of the called party leg were not properly sent back to the caller call leg when reinvited.

(closes issue #13569)
Reported by: bkw918

Modified:
    branches/1.4/channels/chan_sip.c
    branches/1.4/main/rtp.c

Modified: branches/1.4/channels/chan_sip.c
URL: http://svn.asterisk.org/svn-view/asterisk/branches/1.4/channels/chan_sip.c?view=diff&rev=195095&r1=195094&r2=195095
==============================================================================
--- branches/1.4/channels/chan_sip.c (original)
+++ branches/1.4/channels/chan_sip.c Mon May 18 08:53:39 2009
@@ -18559,11 +18559,8 @@
 		changed = 1;
 	}
 	if (codecs) {
-		if ((p->redircodecs != codecs)) {
+		if (p->redircodecs != codecs && (p->jointcapability & codecs) != p->jointcapability) {
 			p->redircodecs = codecs;
-			changed = 1;
-		}
-		if ((p->capability & codecs) != p->capability) {
 			p->jointcapability &= codecs;
 			p->capability &= codecs;
 			changed = 1;

Modified: branches/1.4/main/rtp.c
URL: http://svn.asterisk.org/svn-view/asterisk/branches/1.4/main/rtp.c?view=diff&rev=195095&r1=195094&r2=195095
==============================================================================
--- branches/1.4/main/rtp.c (original)
+++ branches/1.4/main/rtp.c Mon May 18 08:53:39 2009
@@ -3019,7 +3019,8 @@
 			oldcodec1 = codec1;
 		}
 		if ((inaddrcmp(&t0, &ac0)) ||
-		    (vp0 && inaddrcmp(&vt0, &vac0))) {
+		    (vp0 && inaddrcmp(&vt0, &vac0)) ||
+		    (codec0 != oldcodec0)) {
 			if (option_debug > 1) {
 				ast_log(LOG_DEBUG, "Oooh, '%s' changed end address to %s:%d (format %d)\n",
 					c0->name, ast_inet_ntoa(t0.sin_addr), ntohs(t0.sin_port), codec0);




More information about the asterisk-commits mailing list