[asterisk-commits] file: branch file/bridging r107000 - in /team/file/bridging: include/asterisk...

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Sat Mar 8 13:27:12 CST 2008


Author: file
Date: Sat Mar  8 13:27:12 2008
New Revision: 107000

URL: http://svn.digium.com/view/asterisk?view=rev&rev=107000
Log:
Whoops, need to pass along the hook's pvt pointer.

Modified:
    team/file/bridging/include/asterisk/bridging.h
    team/file/bridging/main/bridging.c

Modified: team/file/bridging/include/asterisk/bridging.h
URL: http://svn.digium.com/view/asterisk/team/file/bridging/include/asterisk/bridging.h?view=diff&rev=107000&r1=106999&r2=107000
==============================================================================
--- team/file/bridging/include/asterisk/bridging.h (original)
+++ team/file/bridging/include/asterisk/bridging.h Sat Mar  8 13:27:12 2008
@@ -99,7 +99,7 @@
 };
 
 
-typedef int (*ast_bridge_features_hook_callback)(struct ast_bridge *bridge, struct ast_bridge_channel *bridge_channel);
+typedef int (*ast_bridge_features_hook_callback)(struct ast_bridge *bridge, struct ast_bridge_channel *bridge_channel, void *hook_pvt);
 
 struct ast_bridge_features_hook {
 	char dtmf[8];

Modified: team/file/bridging/main/bridging.c
URL: http://svn.digium.com/view/asterisk/team/file/bridging/main/bridging.c?view=diff&rev=107000&r1=106999&r2=107000
==============================================================================
--- team/file/bridging/main/bridging.c (original)
+++ team/file/bridging/main/bridging.c Sat Mar  8 13:27:12 2008
@@ -723,7 +723,7 @@
 
 	/* If a hook was actually matched execute it on this channel, otherwise stream up the DTMF to the other channels */
 	if (hook) {
-		hook->callback(bridge, bridge_channel);
+		hook->callback(bridge, bridge_channel, hook->hook_pvt);
 	} else {
 		ast_bridge_dtmf_stream(bridge, dtmf, bridge_channel->chan);
 		bridge_channel->state = AST_BRIDGE_CHANNEL_STATE_WAIT;
@@ -1409,7 +1409,7 @@
 }
 
 /*! \brief Internal built in feature for blind transfers */
-static int feature_blind_transfer(struct ast_bridge *bridge, struct ast_bridge_channel *bridge_channel)
+static int feature_blind_transfer(struct ast_bridge *bridge, struct ast_bridge_channel *bridge_channel, void *hook_pvt)
 {
 	char exten[AST_MAX_EXTENSION] = "";
 	struct ast_channel *chan = NULL;
@@ -1435,7 +1435,7 @@
 }
 
 /*! \brief Attended transfer feature to turn it into a threeway call */
-static int attended_threeway_transfer(struct ast_bridge *bridge, struct ast_bridge_channel *bridge_channel)
+static int attended_threeway_transfer(struct ast_bridge *bridge, struct ast_bridge_channel *bridge_channel, void *hook_pvt)
 {
 	/* This is sort of abusing the depart state but in this instance it is only going to be handled in the below function so it is okay */
 	bridge_channel->state = AST_BRIDGE_CHANNEL_STATE_DEPART;
@@ -1443,7 +1443,7 @@
 }
 
 /*! \brief Attended transfer abort feature */
-static int attended_abort_transfer(struct ast_bridge *bridge, struct ast_bridge_channel *bridge_channel)
+static int attended_abort_transfer(struct ast_bridge *bridge, struct ast_bridge_channel *bridge_channel, void *hook_pvt)
 {
 	struct ast_bridge_channel *called_bridge_channel = NULL;
 
@@ -1466,7 +1466,7 @@
 }
 
 /*! \brief Internal built in feature for attended transfers */
-static int feature_attended_transfer(struct ast_bridge *bridge, struct ast_bridge_channel *bridge_channel)
+static int feature_attended_transfer(struct ast_bridge *bridge, struct ast_bridge_channel *bridge_channel, void *hook_pvt)
 {
 	char exten[AST_MAX_EXTENSION] = "";
 	struct ast_channel *chan = NULL;
@@ -1537,7 +1537,7 @@
 }
 
 /*! \brief Internal built in feature for hangup */
-static int feature_hangup(struct ast_bridge *bridge, struct ast_bridge_channel *bridge_channel)
+static int feature_hangup(struct ast_bridge *bridge, struct ast_bridge_channel *bridge_channel, void *hook_pvt)
 {
 	/* This is very simple, we basically change the state on the bridge channel to end and the core takes care of the rest */
 	bridge_channel->state = AST_BRIDGE_CHANNEL_STATE_END;




More information about the asterisk-commits mailing list