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

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Mon Jul 1 09:28:09 CDT 2013


Author: mmichelson
Date: Mon Jul  1 09:28:07 2013
New Revision: 393305

URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=393305
Log:
Fix a compilation error and fix a UX error

* Changing a list not to have a lock means you no longer can initialize and destroy it.
* Make sure the transferee hears ringing when the transferer is recalled.


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=393305&r1=393304&r2=393305
==============================================================================
--- team/mmichelson/atxfer_features/main/bridging_basic.c (original)
+++ team/mmichelson/atxfer_features/main/bridging_basic.c Mon Jul  1 09:28:07 2013
@@ -492,7 +492,6 @@
 	ao2_cleanup(props->recall_target);
 	ast_cond_destroy(&props->cond);
 	ast_mutex_destroy(&props->lock);
-	AST_LIST_HEAD_DESTROY(&props->stimulus_queue);
 }
 
 static struct attended_transfer_properties *attended_transfer_properties_alloc(
@@ -515,8 +514,6 @@
 
 	props->target_framehook_id = -1;
 	props->transferer = ast_channel_ref(transferer);
-
-	AST_LIST_HEAD_INIT(&props->stimulus_queue);
 
 	ast_channel_lock(props->transferer);
 	xfer_cfg = ast_get_chan_features_xfer_config(props->transferer);
@@ -628,6 +625,16 @@
 	ast_assert(bridge_channel != NULL);
 
 	ast_bridge_channel_write_control_data(bridge_channel, AST_CONTROL_RINGING, NULL, 0);
+}
+
+static void bridge_ringing(struct ast_bridge *bridge)
+{
+	struct ast_frame ringing = {
+		.frametype = AST_FRAME_CONTROL,
+		.subclass.integer = AST_CONTROL_RINGING,
+	};
+
+	ast_bridge_queue_everyone_else(bridge, NULL, &ringing);
 }
 
 static void bridge_hold(struct ast_bridge *bridge)
@@ -988,6 +995,7 @@
 		return -1;
 	}
 
+	bridge_ringing(props->transferee_bridge);
 	return 0;
 }
 




More information about the asterisk-commits mailing list