diff options
author | Richard Mudgett <rmudgett@digium.com> | 2012-08-29 18:40:04 +0000 |
---|---|---|
committer | Richard Mudgett <rmudgett@digium.com> | 2012-08-29 18:40:04 +0000 |
commit | adefb772c430828b98e4c7f28d3c68d9f69f4847 (patch) | |
tree | 236c17689102363eb64882ae7df7f0b9ed199e44 | |
parent | 3f69a4e34fdf714e6b640e660f9cf673dce7e8cc (diff) |
Fix hangup cause passthrough regression.
The v1.8 -r369258 change to fix the F and F(x) action logic introduced a
regression in passing the hangup cause from the called channel to the
caller channel.
(closes issue ASTERISK-20287)
Reported by: Konstantin Suvorov
Patches:
app_dial_hangupcause.patch (license #6421) patch uploaded by Konstantin Suvorov (modified)
Tested by: rmudgett
........
Merged revisions 371860 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 371861 from http://svn.asterisk.org/svn/asterisk/branches/10
........
Merged revisions 371862 from http://svn.asterisk.org/svn/asterisk/branches/11
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@371863 65c4cc65-6c06-0410-ace0-fbb531ad65f3
-rw-r--r-- | apps/app_dial.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/apps/app_dial.c b/apps/app_dial.c index 355c77fa1..ed1593b30 100644 --- a/apps/app_dial.c +++ b/apps/app_dial.c @@ -3065,9 +3065,9 @@ static int dial_exec_full(struct ast_channel *chan, const char *data, struct ast /* The peer is now running its own PBX. */ goto out; } - } else { - ast_channel_hangupcause_set(chan, ast_channel_hangupcause(peer)); } + } else if (!ast_check_hangup(chan)) { + ast_channel_hangupcause_set(chan, ast_channel_hangupcause(peer)); } ast_autoservice_chan_hangup_peer(chan, peer); } |