summaryrefslogtreecommitdiff
path: root/main/app.c
diff options
context:
space:
mode:
Diffstat (limited to 'main/app.c')
-rw-r--r--main/app.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/main/app.c b/main/app.c
index c4143d840..a89e5b06f 100644
--- a/main/app.c
+++ b/main/app.c
@@ -357,6 +357,11 @@ int ast_app_exec_macro(struct ast_channel *autoservice_chan, struct ast_channel
if (autoservice_chan) {
ast_autoservice_stop(autoservice_chan);
}
+
+ if (ast_check_hangup_locked(macro_chan)) {
+ ast_queue_hangup(macro_chan);
+ }
+
return res;
}
@@ -433,6 +438,11 @@ int ast_app_exec_sub(struct ast_channel *autoservice_chan, struct ast_channel *s
if (autoservice_chan) {
ast_autoservice_stop(autoservice_chan);
}
+
+ if (!ignore_hangup && ast_check_hangup_locked(sub_chan)) {
+ ast_queue_hangup(sub_chan);
+ }
+
return res;
}