diff options
author | markster <markster@f38db490-d61c-443f-a65b-d21fe96a405b> | 2003-08-25 22:40:14 +0000 |
---|---|---|
committer | markster <markster@f38db490-d61c-443f-a65b-d21fe96a405b> | 2003-08-25 22:40:14 +0000 |
commit | 49a8ca06962e0a27858fd84ebd69c0c103560650 (patch) | |
tree | cc6845886cf0d56a8f1d419cae349539f0ce978b /pbx.c | |
parent | 78b836de556b1de0b7b2937d005997a6302ba6a3 (diff) |
Merge james's patch (bug #7)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@1432 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'pbx.c')
-rwxr-xr-x | pbx.c | 7 |
1 files changed, 6 insertions, 1 deletions
@@ -3855,17 +3855,22 @@ static void *ast_pbx_run_app(void *data) return NULL; } -int ast_pbx_outgoing_app(char *type, int format, void *data, int timeout, char *app, char *appdata, int *reason, int sync, char *callerid) +int ast_pbx_outgoing_app(char *type, int format, void *data, int timeout, char *app, char *appdata, int *reason, int sync, char *callerid, char *variable) { struct ast_channel *chan; struct async_stat *as; struct app_tmp *tmp; + char *var, *vartmp; int res = -1; if (!app || !strlen(app)) return -1; if (sync) { chan = ast_request_and_dial(type, format, data, timeout, reason, callerid); if (chan) { + vartmp = variable; + while( (var = strtok_r(NULL, "|", &vartmp)) ) { + pbx_builtin_setvar( chan, var ); + } if (chan->_state == AST_STATE_UP) { res = 0; if (option_verbose > 3) |