From e6732fc1ebe25f090eeeb891726578de6f3e3562 Mon Sep 17 00:00:00 2001 From: twilson Date: Wed, 21 Jan 2009 23:23:59 +0000 Subject: Fix builtin_blindtransfer calling back the wrong channel Blindtransfer also was calling back the wrong channel when a timeout occurred. This should be the last of these, as there are no more masq_park_announce calls that aren't passing orig_chan_name git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@169868 f38db490-d61c-443f-a65b-d21fe96a405b --- res/res_features.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'res') diff --git a/res/res_features.c b/res/res_features.c index c7fa2ef10..5017188f2 100644 --- a/res/res_features.c +++ b/res/res_features.c @@ -715,8 +715,10 @@ static int builtin_blindtransfer(struct ast_channel *chan, struct ast_channel *p const char *transferer_real_context; char xferto[256]; int res; + const char *orig_chan_name; set_peers(&transferer, &transferee, peer, chan, sense); + orig_chan_name = ast_strdupa(transferer->name); transferer_real_context = real_ctx(transferer, transferee); /* Start autoservice on chan while we talk to the originator */ ast_autoservice_start(transferee); @@ -743,7 +745,7 @@ static int builtin_blindtransfer(struct ast_channel *chan, struct ast_channel *p res = finishup(transferee); if (res) res = -1; - else if (!masq_park_call_announce(transferee, transferer, 0, NULL, NULL)) { /* success */ + else if (!masq_park_call_announce(transferee, transferer, 0, NULL, orig_chan_name)) { /* success */ /* We return non-zero, but tell the PBX not to hang the channel when the thread dies -- We have to be careful now though. We are responsible for hanging up the channel, else it will never be hung up! */ -- cgit v1.2.3