aboutsummaryrefslogtreecommitdiffstats
path: root/pbx.c
diff options
context:
space:
mode:
authormarkster <markster@f38db490-d61c-443f-a65b-d21fe96a405b>2003-08-25 22:40:14 +0000
committermarkster <markster@f38db490-d61c-443f-a65b-d21fe96a405b>2003-08-25 22:40:14 +0000
commit49a8ca06962e0a27858fd84ebd69c0c103560650 (patch)
treecc6845886cf0d56a8f1d419cae349539f0ce978b /pbx.c
parent78b836de556b1de0b7b2937d005997a6302ba6a3 (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-xpbx.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/pbx.c b/pbx.c
index b500868e0..bd3e3a1b6 100755
--- a/pbx.c
+++ b/pbx.c
@@ -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)