summaryrefslogtreecommitdiff
path: root/res/res_stasis.c
diff options
context:
space:
mode:
authorJoshua Colp <jcolp@digium.com>2016-04-06 05:43:47 -0500
committerGerrit Code Review <gerrit2@gerrit.digium.api>2016-04-06 05:43:47 -0500
commit72ef79dc2de8f7e5df194654071988299ed5cabd (patch)
treec19a330cabb21079ab68447a2e34341bbdca4678 /res/res_stasis.c
parent3b71f09bb7778ee48b2af13960a251a4b9934530 (diff)
parentabbb2edd4c897fc3ac8a3589c5b799ff53ed10d2 (diff)
Merge "ARI: Add method to Dial a created channel."
Diffstat (limited to 'res/res_stasis.c')
-rw-r--r--res/res_stasis.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/res/res_stasis.c b/res/res_stasis.c
index 5aa0aa9ac..346be563c 100644
--- a/res/res_stasis.c
+++ b/res/res_stasis.c
@@ -1287,6 +1287,7 @@ int stasis_app_exec(struct ast_channel *chan, const char *app_name, int argc,
int r;
int command_count;
RAII_VAR(struct ast_bridge *, last_bridge, NULL, ao2_cleanup);
+ struct ast_dial *dial;
/* Check to see if a bridge absorbed our hangup frame */
if (ast_check_hangup_locked(chan)) {
@@ -1296,6 +1297,7 @@ int stasis_app_exec(struct ast_channel *chan, const char *app_name, int argc,
last_bridge = bridge;
bridge = ao2_bump(stasis_app_get_bridge(control));
+ dial = stasis_app_get_dial(control);
if (bridge != last_bridge) {
app_unsubscribe_bridge(app, last_bridge);
@@ -1304,8 +1306,8 @@ int stasis_app_exec(struct ast_channel *chan, const char *app_name, int argc,
}
}
- if (bridge) {
- /* Bridge is handling channel frames */
+ if (bridge || dial) {
+ /* Bridge/dial is handling channel frames */
control_wait(control);
control_dispatch_all(control, chan);
continue;