Author: file
Date: Mon Jul 30 12:11:02 2007
New Revision: 77778
URL: http://svn.digium.com/view/asterisk?view=rev&rev=77778
Log:
(closes issue #10327)
Reported by: kkiely
Instead of directly mucking with the extension/context/priority of the channel
we are transferring when it has a PBX simply call ast_async_goto on it. This
will ensure that the channel gets handled properly and sent to the right place.
Modified:
branches/1.4/res/res_features.c
Modified: branches/1.4/res/res_features.c
URL:
http://svn.digium.com/view/asterisk/branches/1.4/res/res_features.c?view=diff&rev=77778&r1=77777&r2=77778
==============================================================================
--- branches/1.4/res/res_features.c (original)
+++ branches/1.4/res/res_features.c Mon Jul 30 12:11:02 2007
@@ -699,18 +699,14 @@
ast_cdr_setdestchan(transferer->cdr, transferee->name);
ast_cdr_setapp(transferer->cdr, "BLINDTRANSFER","");
}
- if (!transferee->pbx) {
- /* Doh! Use our handy async_goto functions */
- if (option_verbose > 2)
- ast_verbose(VERBOSE_PREFIX_3 "Transferring %s
to '%s' (context %s) priority 1\n"
-
,transferee->name, xferto, transferer_real_context);
- if (ast_async_goto(transferee, transferer_real_context,
xferto, 1))
- ast_log(LOG_WARNING, "Async goto failed :-(\n");
+ if (!transferee->pbx)
res = -1;
- } else {
- /* Set the channel's new extension, since it exists,
using transferer context */
- set_c_e_p(transferee, transferer_real_context, xferto,
0);
- }
+
+ if (option_verbose > 2)
+ ast_verbose(VERBOSE_PREFIX_3 "Transferring %s to '%s'
(context %s) priority 1\n"
+ ,transferee->name, xferto,
transferer_real_context);
+ if (ast_async_goto(transferee, transferer_real_context, xferto,
1))
+ ast_log(LOG_WARNING, "Async goto failed :-(\n");
check_goto_on_transfer(transferer);
return res;
} else {
_______________________________________________
--Bandwidth and Colocation Provided by http://www.api-digital.com--
svn-commits mailing list
To UNSUBSCRIBE or update options visit:
http://lists.digium.com/mailman/listinfo/svn-commits