[asterisk-commits] rmudgett: trunk r247609 - /trunk/main/channel.c

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Thu Feb 18 12:31:47 CST 2010


Author: rmudgett
Date: Thu Feb 18 12:31:44 2010
New Revision: 247609

URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=247609
Log:
Fix placing ISDN calls on hold preventing native bridging from being reexamined after a transfer.

Consider the following scenario:

                 /-- B
A == * == Network
                 \-- C

Party B calls party A (EuroISDN BRI phone)
Party A puts B on hold using the HOLD/RETRIEVE messages.
Party A calls party C.
Party A puts C on hold to talk with party B again.
Party A transfers B to C by hanging up.

The call does not get the opportunity to get re-transferred into the ISDN
network by the native bridge because native bridging is not being
reexamined after the initial transfer.

Modified:
    trunk/main/channel.c

Modified: trunk/main/channel.c
URL: http://svnview.digium.com/svn/asterisk/trunk/main/channel.c?view=diff&rev=247609&r1=247608&r2=247609
==============================================================================
--- trunk/main/channel.c (original)
+++ trunk/main/channel.c Thu Feb 18 12:31:44 2010
@@ -5890,7 +5890,6 @@
 {
 	struct ast_channel *who = NULL, *chans[2] = { c0, c1 };
 	enum ast_bridge_result res = AST_BRIDGE_COMPLETE;
-	int nativefailed=0;
 	format_t o0nativeformats;
 	format_t o1nativeformats;
 	long time_left_ms=0;
@@ -6055,7 +6054,7 @@
 
 		if (c0->tech->bridge &&
 		    (c0->tech->bridge == c1->tech->bridge) &&
-		    !nativefailed && !c0->monitor && !c1->monitor &&
+		    !c0->monitor && !c1->monitor &&
 		    !c0->audiohooks && !c1->audiohooks && 
 		    !c0->masq && !c0->masqr && !c1->masq && !c1->masqr) {
 			/* Looks like they share a bridge method and nothing else is in the way */
@@ -6096,7 +6095,6 @@
 				ast_verb(3, "Native bridging %s and %s ended\n", c0->name, c1->name);
 				/* fallthrough */
 			case AST_BRIDGE_FAILED_NOWARN:
-				nativefailed++;
 				break;
 			}
 		}




More information about the asterisk-commits mailing list