res_pjsip_refer: Fix bugs involving Parking/PJSIP/transfers

PJSIP would never send the final 200 Notify for a blind transfer
when transferring to parking. This patch fixes that. In addition,
it fixes a reference leak when performing blind transfers to
non-bridging extensions.

Review: https://reviewboard.asterisk.org/r/3485/
........

Merged revisions 414400 from http://svn.asterisk.org/svn/asterisk/branches/12


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@414403 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Jonathan Rose
2014-05-22 15:52:30 +00:00
parent 912bbdd1dd
commit d00882108f
12 changed files with 158 additions and 40 deletions

View File

@@ -2259,7 +2259,7 @@ static void *__analog_ss_thread(void *data)
bridge_channel = ast_channel_get_bridge_channel(p->subs[ANALOG_SUB_THREEWAY].owner);
ast_channel_unlock(p->subs[ANALOG_SUB_THREEWAY].owner);
if (bridge_channel) {
if (!ast_parking_blind_transfer_park(bridge_channel, ast_channel_context(chan), exten)) {
if (!ast_parking_blind_transfer_park(bridge_channel, ast_channel_context(chan), exten, NULL, NULL)) {
/*
* Swap things around between the three-way and real call so we
* can hear where the channel got parked.