diff options
author | Tilghman Lesher <tilghman@meg.abyt.es> | 2009-05-20 23:30:05 +0000 |
---|---|---|
committer | Tilghman Lesher <tilghman@meg.abyt.es> | 2009-05-20 23:30:05 +0000 |
commit | 873a46ded5edc3a9ce6c5e003f3d29cb3452b28c (patch) | |
tree | af81f631199bcb34bd56a40a692d6e8b8a476059 /apps | |
parent | 56903a748528db95c5ef22fbc1a0ee0b94bab090 (diff) |
If a variable had a blank value upon the initial setting, then it would do nothing.
Identified by Dmitry Andrianov via private email, fixed by me.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@195839 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'apps')
-rw-r--r-- | apps/app_stack.c | 27 |
1 files changed, 13 insertions, 14 deletions
diff --git a/apps/app_stack.c b/apps/app_stack.c index 83d204b55..64522afdd 100644 --- a/apps/app_stack.c +++ b/apps/app_stack.c @@ -201,21 +201,20 @@ static int frame_set_var(struct ast_channel *chan, struct gosub_stack_frame *fra } } - if (!ast_strlen_zero(value)) { - if (!found) { - variables = ast_var_assign(var, ""); - AST_LIST_INSERT_HEAD(&frame->varshead, variables, entries); - pbx_builtin_pushvar_helper(chan, var, value); - } else - pbx_builtin_setvar_helper(chan, var, value); - - manager_event(EVENT_FLAG_DIALPLAN, "VarSet", - "Channel: %s\r\n" - "Variable: LOCAL(%s)\r\n" - "Value: %s\r\n" - "Uniqueid: %s\r\n", - chan->name, var, value, chan->uniqueid); + if (!found) { + variables = ast_var_assign(var, ""); + AST_LIST_INSERT_HEAD(&frame->varshead, variables, entries); + pbx_builtin_pushvar_helper(chan, var, value); + } else { + pbx_builtin_setvar_helper(chan, var, value); } + + manager_event(EVENT_FLAG_DIALPLAN, "VarSet", + "Channel: %s\r\n" + "Variable: LOCAL(%s)\r\n" + "Value: %s\r\n" + "Uniqueid: %s\r\n", + chan->name, var, value, chan->uniqueid); return 0; } |