diff options
author | mvanbaak <mvanbaak@f38db490-d61c-443f-a65b-d21fe96a405b> | 2009-09-02 16:01:20 +0000 |
---|---|---|
committer | mvanbaak <mvanbaak@f38db490-d61c-443f-a65b-d21fe96a405b> | 2009-09-02 16:01:20 +0000 |
commit | 5cd8ad2168bf8f8cc07c207146fba219481f7733 (patch) | |
tree | fead1aa7cf1680f091589f2b40ece4c8e99fabcc /channels | |
parent | eb2183e338f1d8632f6c839efdf8b97b85664d65 (diff) |
Merged revisions 215462 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk
........
r215462 | mvanbaak | 2009-09-02 17:56:46 +0200 (Wed, 02 Sep 2009) | 12 lines
Honor configured parkinglot when parking and retrieving parked calls
Thank oej for pointing out the fact that sip_new did not copy parkinglot from the peer
into the newly created channel.
(closes issue #15538)
Reported by: gracedman
Patches:
2009090100_sipnewparkinglot-161.diff.txt uploaded by mvanbaak (license 7)
With mod by me to also fix callparking as well (this uploaded patch only fixed retrieving a parked call)
Tested by: gracedman, mvanbaak
........
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.6.1@215464 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels')
-rw-r--r-- | channels/chan_sip.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/channels/chan_sip.c b/channels/chan_sip.c index 45446bfe8..9b60775ad 100644 --- a/channels/chan_sip.c +++ b/channels/chan_sip.c @@ -5957,6 +5957,8 @@ static struct ast_channel *sip_new(struct sip_pvt *i, int state, const char *tit tmp->callgroup = i->callgroup; tmp->pickupgroup = i->pickupgroup; tmp->cid.cid_pres = i->callingpres; + if (!ast_strlen_zero(i->parkinglot)) + ast_string_field_set(tmp, parkinglot, i->parkinglot); if (!ast_strlen_zero(i->accountcode)) ast_string_field_set(tmp, accountcode, i->accountcode); if (i->amaflags) @@ -17357,6 +17359,8 @@ static int sip_park(struct ast_channel *chan1, struct ast_channel *chan2, struct /* Make formats okay */ transferer->readformat = chan2->readformat; transferer->writeformat = chan2->writeformat; + if (!ast_strlen_zero(chan2->parkinglot)) + ast_string_field_set(transferer, parkinglot, chan2->parkinglot); /* Prepare for taking over the channel. Go ahead and grab this channel * lock here to avoid a deadlock with callbacks into the channel driver |