]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
bridge.c: Hangup attended transfer target after it has been swapped out
authorKevin Harwell <kharwell@digium.com>
Tue, 7 Apr 2015 16:40:44 +0000 (16:40 +0000)
committerKevin Harwell <kharwell@digium.com>
Tue, 7 Apr 2015 16:40:44 +0000 (16:40 +0000)
After completing an attended transfer the transfer target channel (the one that
gets swapped out) was not being hung up after leaving the bridge. This resulted
in a channel possibly being left around. Added an explicit softhangup for the
channel in question after the transfer is successfully completed in order to
make sure the channel is hung up.

ASTERISK-24782 #close
Reported by: John Bigelow
Review: https://reviewboard.asterisk.org/r/4575/

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@434240 65c4cc65-6c06-0410-ace0-fbb531ad65f3

main/bridge.c

index 9c1d044e6339bf1d7d6425384ecaba33f6260303..a76ac77ccafe807d579aae0c913442e122db395c 100644 (file)
@@ -4540,6 +4540,7 @@ enum ast_transfer_result ast_bridge_transfer_attended(struct ast_channel *to_tra
                ast_bridge_unlock(to_transferee_bridge);
                ast_bridge_unlock(to_target_bridge);
 
+               ast_softhangup(to_transfer_target, AST_SOFTHANGUP_DEV);
                goto end;
        }