[Asterisk-cvs] asterisk ChangeLog,1.7,1.8 channel.c,1.256,1.257
kpfleming
kpfleming
Tue Nov 1 16:19:59 CST 2005
Update of /usr/cvsroot/asterisk
In directory mongoose.digium.com:/tmp/cvs-serv16500
Modified Files:
ChangeLog channel.c
Log Message:
issue #5564
Index: ChangeLog
===================================================================
RCS file: /usr/cvsroot/asterisk/ChangeLog,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -d -r1.7 -r1.8
--- ChangeLog 1 Nov 2005 21:02:07 -0000 1.7
+++ ChangeLog 1 Nov 2005 21:11:56 -0000 1.8
@@ -1,5 +1,9 @@
2005-11-01 Kevin P. Fleming <kpfleming at digium.com>
+ * apps/app_parkandannounce.c (parkandannounce_exec): supply parent channel to ast_request_and_dial so channel variables can be inherited (issue #5564)
+ * include/asterisk/channel.h: add parent_channel field
+ * channel.c (__ast_request_and_dial): use parent_channel field to inherit variables into new channel
+
* apps/app_cut.c (cut_internal): use ast_separate_app_args() instead of open code (issue #5560)
* apps/app_mixmonitor.c (launch_monitor_thread): ast_strlen_zero can handle NULL input (issue #5561)
Index: channel.c
===================================================================
RCS file: /usr/cvsroot/asterisk/channel.c,v
retrieving revision 1.256
retrieving revision 1.257
diff -u -d -r1.256 -r1.257
--- channel.c 1 Nov 2005 18:48:05 -0000 1.256
+++ channel.c 1 Nov 2005 21:11:56 -0000 1.257
@@ -2355,8 +2355,12 @@
chan = ast_request(type, format, data, &cause);
if (chan) {
if (oh) {
- ast_set_variables(chan, oh->vars);
- ast_set_callerid(chan, oh->cid_num, oh->cid_name, oh->cid_num);
+ if (oh->vars)
+ ast_set_variables(chan, oh->vars);
+ if (oh->cid_num && *oh->cid_num && oh->cid_name && *oh->cid_name)
+ ast_set_callerid(chan, oh->cid_num, oh->cid_name, oh->cid_num);
+ if (oh->parent_channel)
+ ast_channel_inherit_variables(oh->parent_channel, chan);
}
ast_set_callerid(chan, cid_num, cid_name, cid_num);
More information about the svn-commits
mailing list