Make variables work in manager originate again

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@2993 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
James Golovich 2004-05-17 21:10:26 +00:00
parent d117f2258f
commit 668f8161ab
1 changed files with 10 additions and 0 deletions

10
pbx.c
View File

@ -3963,6 +3963,11 @@ int ast_pbx_outgoing_exten(char *type, int format, void *data, int timeout, char
strncpy(as->exten, exten, sizeof(as->exten) - 1);
as->priority = priority;
as->timeout = timeout;
if (variable) {
tmp = ast_strdupa(variable);
for (var = strtok_r(tmp, "|", &tmp); var; var = strtok_r(NULL, "|", &tmp))
pbx_builtin_setvar( chan, var );
}
pthread_attr_init(&attr);
pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED);
if (pthread_create(&as->p, &attr, async_wait, as)) {
@ -4068,6 +4073,11 @@ int ast_pbx_outgoing_app(char *type, int format, void *data, int timeout, char *
if (appdata)
strncpy(as->appdata, appdata, sizeof(as->appdata) - 1);
as->timeout = timeout;
if (variable) {
tmp = ast_strdupa(variable);
for (var = strtok_r(tmp, "|", &tmp); var; var = strtok_r(NULL, "|", &tmp))
pbx_builtin_setvar( chan, var );
}
/* Start a new thread, and get something handling this channel. */
pthread_attr_init(&attr);
pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED);