summaryrefslogtreecommitdiff
path: root/apps/app_stack.c
diff options
context:
space:
mode:
authorTilghman Lesher <tilghman@meg.abyt.es>2008-10-27 16:44:55 +0000
committerTilghman Lesher <tilghman@meg.abyt.es>2008-10-27 16:44:55 +0000
commit45b7b39c2269b900c22bd012e1fcf231ab63ee05 (patch)
treee69b6aca1bdac5967061a88383bff4fc502c7908 /apps/app_stack.c
parent4ee45f5309f17ddffe38e8e2ddebdded8ef80f06 (diff)
Set ARGC in subroutines with the number of arguments passed.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@152174 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'apps/app_stack.c')
-rw-r--r--apps/app_stack.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/apps/app_stack.c b/apps/app_stack.c
index 4afabc651..2e5e6de9e 100644
--- a/apps/app_stack.c
+++ b/apps/app_stack.c
@@ -118,8 +118,6 @@ static int frame_set_var(struct ast_channel *chan, struct gosub_stack_frame *fra
static void gosub_release_frame(struct ast_channel *chan, struct gosub_stack_frame *frame)
{
- unsigned char i;
- char argname[15];
struct ast_var_t *vardata;
/* If chan is not defined, then we're calling it as part of gosub_free,
@@ -287,6 +285,8 @@ static int gosub_exec(struct ast_channel *chan, void *data)
frame_set_var(chan, newframe, argname, args2.argval[i]);
ast_debug(1, "Setting '%s' to '%s'\n", argname, args2.argval[i]);
}
+ snprintf(argname, sizeof(argname), "%d", args2.argc);
+ frame_set_var(chan, newframe, "ARGC", argname);
/* And finally, save our return address */
oldlist = stack_store->data;