[asterisk-commits] rmudgett: branch rmudgett/bridge_phase r392310 - /team/rmudgett/bridge_phase/...
SVN commits to the Asterisk project
asterisk-commits at lists.digium.com
Wed Jun 19 22:22:07 CDT 2013
Author: rmudgett
Date: Wed Jun 19 22:22:06 2013
New Revision: 392310
URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=392310
Log:
Implement the right bridge subclass method.
Modified:
team/rmudgett/bridge_phase/apps/app_agent_pool.c
Modified: team/rmudgett/bridge_phase/apps/app_agent_pool.c
URL: http://svnview.digium.com/svn/asterisk/team/rmudgett/bridge_phase/apps/app_agent_pool.c?view=diff&rev=392310&r1=392309&r2=392310
==============================================================================
--- team/rmudgett/bridge_phase/apps/app_agent_pool.c (original)
+++ team/rmudgett/bridge_phase/apps/app_agent_pool.c Wed Jun 19 22:22:06 2013
@@ -1001,15 +1001,22 @@
}
/*!
- * \brief Destroy the bridge.
+ * \brief The bridge is being dissolved.
*
* \param self Bridge to operate upon.
*
+ * \details
+ * The bridge is being dissolved. Remove any external
+ * references to the bridge so it can be destroyed.
+ *
+ * \note On entry, self must NOT be locked.
+ *
* \return Nothing
*/
-static void bridge_agent_hold_destroy(struct ast_bridge *self)
+static void bridge_agent_hold_dissolving(struct ast_bridge *self)
{
ao2_global_obj_replace_unref(agent_holding, NULL);
+ ast_bridge_base_v_table.dissolving(self);
}
static struct ast_bridge_methods bridge_agent_hold_v_table;
@@ -1031,7 +1038,7 @@
/* Setup bridge agent_hold subclass v_table. */
bridge_agent_hold_v_table = ast_bridge_base_v_table;
bridge_agent_hold_v_table.name = "agent_hold";
- bridge_agent_hold_v_table.destroy = bridge_agent_hold_destroy;
+ bridge_agent_hold_v_table.dissolving = bridge_agent_hold_dissolving;
bridge_agent_hold_v_table.push = bridge_agent_hold_push;
bridge_agent_hold_v_table.pull = bridge_agent_hold_pull;
}
More information about the asterisk-commits
mailing list