diff options
author | twilson <twilson@f38db490-d61c-443f-a65b-d21fe96a405b> | 2011-05-18 23:18:32 +0000 |
---|---|---|
committer | twilson <twilson@f38db490-d61c-443f-a65b-d21fe96a405b> | 2011-05-18 23:18:32 +0000 |
commit | 62a7dfb3025ec7d23f853095746092305824f76c (patch) | |
tree | bc4cf7103c009b198fc745785e5f37c1bb3d4046 /channels/chan_sip.c | |
parent | c147f3272d4bc200c8ba3c91489066efe25e071c (diff) |
Merged revisions 319654 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8
................
r319654 | twilson | 2011-05-18 16:15:58 -0700 (Wed, 18 May 2011) | 22 lines
Merged revisions 319653 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2
................
r319653 | twilson | 2011-05-18 16:11:57 -0700 (Wed, 18 May 2011) | 15 lines
Merged revisions 319652 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r319652 | twilson | 2011-05-18 16:04:35 -0700 (Wed, 18 May 2011) | 8 lines
Make sure everyone gets an unhold when a transfer succeeds
Some phones, like the Snom phones, send a hold to the transfer target after
before sending the REFER. We need to make sure that we unhold the parties
that are being connected after the masquerade. If Local channels with the /nm
option are used when dialing the parties, hold music would still be playing on
the transfer target, even after being connected with the transferee.
........
................
................
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@319661 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels/chan_sip.c')
-rw-r--r-- | channels/chan_sip.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/channels/chan_sip.c b/channels/chan_sip.c index c81ec6f86..4a01cd434 100644 --- a/channels/chan_sip.c +++ b/channels/chan_sip.c @@ -22659,6 +22659,9 @@ static int local_attended_transfer(struct sip_pvt *transferer, struct sip_dual * sip_pvt_lock(transferer); /* the transferer pvt is expected to remain locked on return */ ast_indicate(target.chan1, AST_CONTROL_UNHOLD); + if (target.chan2) { + ast_indicate(target.chan2, AST_CONTROL_UNHOLD); + } if (current->chan2 && current->chan2->_state == AST_STATE_RING) { ast_indicate(target.chan1, AST_CONTROL_RINGING); |