aboutsummaryrefslogtreecommitdiffstats
path: root/main
diff options
context:
space:
mode:
authordvossel <dvossel@f38db490-d61c-443f-a65b-d21fe96a405b>2010-06-22 15:49:41 +0000
committerdvossel <dvossel@f38db490-d61c-443f-a65b-d21fe96a405b>2010-06-22 15:49:41 +0000
commitd013f45f9988c0aa236c0a36bf48516a78f52270 (patch)
treefdbd6c62a5d4c2b72187c942e157a6bfde00ac93 /main
parent0c01181a8f30177e3688db657190e9e499aa387f (diff)
Merged revisions 271831 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk ........ r271831 | dvossel | 2010-06-22 10:46:22 -0500 (Tue, 22 Jun 2010) | 10 lines fixes attended transfer behavior when both transferee and transferer hung up If both the transferer and transferee of a attended transfer hangup before the new channel picks up, the new channel should be hung up as well as it has no endpoint to talk to. This mirrors the expected behavior used in 1.4. (closes issue #17444) Reported by: corruptor ........ git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.6.2@271832 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'main')
-rw-r--r--main/features.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/main/features.c b/main/features.c
index 4370014b3..3675a9d6a 100644
--- a/main/features.c
+++ b/main/features.c
@@ -1688,6 +1688,11 @@ static int builtin_atxfer(struct ast_channel *chan, struct ast_channel *peer, st
} else {
/* Transferee hung up */
finishup(transferee);
+ /* At this point both the transferer transferee have hungup,
+ * so if newchan is up, hang it up as it has no one to talk to */
+ if (newchan) {
+ ast_hangup(newchan);
+ }
return -1;
}
}