[asterisk-commits] mmichelson: branch mmichelson/atxfer_features r392952 - /team/mmichelson/atxf...

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Wed Jun 26 09:35:42 CDT 2013


Author: mmichelson
Date: Wed Jun 26 09:35:40 2013
New Revision: 392952

URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=392952
Log:
Fix hold/unhold issue for THREEWAY state.

This fix is similar to fix for the COMPLETE state made in the previous commit.


Modified:
    team/mmichelson/atxfer_features/main/bridging_basic.c

Modified: team/mmichelson/atxfer_features/main/bridging_basic.c
URL: http://svnview.digium.com/svn/asterisk/team/mmichelson/atxfer_features/main/bridging_basic.c?view=diff&rev=392952&r1=392951&r2=392952
==============================================================================
--- team/mmichelson/atxfer_features/main/bridging_basic.c (original)
+++ team/mmichelson/atxfer_features/main/bridging_basic.c Wed Jun 26 09:35:40 2013
@@ -603,6 +603,7 @@
 	case STIMULUS_DTMF_ATXFER_ABORT:
 		return TRANSFER_REBRIDGE;
 	case STIMULUS_DTMF_ATXFER_THREEWAY:
+		bridge_unhold(props->transferee_bridge);
 		return TRANSFER_THREEWAY;
 	case STIMULUS_DTMF_ATXFER_SWAP:
 		return TRANSFER_HESITANT;
@@ -667,12 +668,6 @@
 {
 	bridge_merge(props->transferee_bridge, props->target_bridge, NULL, 0);
 
-	/* XXX After the bridge merge, the transferee_bridge will be a softmix
-	 * bridge. If one of the involved bridges was a simple bridge and the
-	 * participant was on hold, then will this unhold properly remove the hold
-	 * from the channel?
-	 */
-	unhold(props->transferer);
 	return 0;
 }
 
@@ -719,9 +714,10 @@
 	case STIMULUS_DTMF_ATXFER_ABORT:
 		return TRANSFER_REBRIDGE;
 	case STIMULUS_DTMF_ATXFER_THREEWAY:
+		bridge_unhold(props->transferee_bridge);
 		return TRANSFER_THREEWAY;
 	case STIMULUS_DTMF_ATXFER_SWAP:
-		 hold(props->transferer);
+		hold(props->transferer);
 		return TRANSFER_DOUBLECHECKING;
 	}
 }
@@ -767,6 +763,7 @@
 	case STIMULUS_DTMF_ATXFER_ABORT:
 		return TRANSFER_RESUME;
 	case STIMULUS_DTMF_ATXFER_THREEWAY:
+		bridge_unhold(props->target_bridge);
 		return TRANSFER_THREEWAY;
 	case STIMULUS_DTMF_ATXFER_SWAP:
 		hold(props->transferer);




More information about the asterisk-commits mailing list