summaryrefslogtreecommitdiff
path: root/apps/app_dial.c
diff options
context:
space:
mode:
authorJonathan Rose <jrose@digium.com>2013-02-22 15:51:20 +0000
committerJonathan Rose <jrose@digium.com>2013-02-22 15:51:20 +0000
commitabfb23df6be759f6ff80c2af7b3b7d7590cf3a32 (patch)
treee0c931b18e773d5ef851b8f1ca05b3ddc2377abc /apps/app_dial.c
parenta3b138429f2a9475acec0470cc43d4a0846ec4a3 (diff)
app_dial: Honor the 'c' flag when the calling party hangs up
Apparently this feature became broken in 11, probably as a result of the Hangup Cause project. (closes issue ASTERISK-21113) Reprted by: Heiko Wundram Patches: app_dial.patch uploaded by Heiko Wundram (license 5822) ........ Merged revisions 381880 from http://svn.asterisk.org/svn/asterisk/branches/11 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@381881 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'apps/app_dial.c')
-rw-r--r--apps/app_dial.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/apps/app_dial.c b/apps/app_dial.c
index b162a4127..0c6b288fa 100644
--- a/apps/app_dial.c
+++ b/apps/app_dial.c
@@ -3096,7 +3096,7 @@ out:
}
ast_channel_early_bridge(chan, NULL);
- hanguptree(&out_chans, NULL, ast_channel_hangupcause(chan)==AST_CAUSE_ANSWERED_ELSEWHERE ? 1 : 0 ); /* forward 'answered elsewhere' if we received it */
+ hanguptree(&out_chans, NULL, ast_channel_hangupcause(chan)==AST_CAUSE_ANSWERED_ELSEWHERE || ast_test_flag64(&opts, OPT_CANCEL_ELSEWHERE) ? 1 : 0 ); /* forward 'answered elsewhere' if we received it */
pbx_builtin_setvar_helper(chan, "DIALSTATUS", pa.status);
senddialendevent(chan, pa.status);
ast_debug(1, "Exiting with DIALSTATUS=%s.\n", pa.status);