diff options
author | russell <russell@f38db490-d61c-443f-a65b-d21fe96a405b> | 2007-02-01 21:24:52 +0000 |
---|---|---|
committer | russell <russell@f38db490-d61c-443f-a65b-d21fe96a405b> | 2007-02-01 21:24:52 +0000 |
commit | 112d764088aebb364dd6cb45ceb8f1b7fbb95618 (patch) | |
tree | 9b4e3d7b4424dc2a1ac1ab1e85631922c055a186 | |
parent | 85ce2f27ac6d367776a21235f6f7c6ae232eedd4 (diff) |
Fix the FIELDQTY function to not crash. (reported by blitzrage and Corydon on IRC)
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@53093 f38db490-d61c-443f-a65b-d21fe96a405b
-rw-r--r-- | funcs/func_strings.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/funcs/func_strings.c b/funcs/func_strings.c index e4f943e37..4787e0dee 100644 --- a/funcs/func_strings.c +++ b/funcs/func_strings.c @@ -46,7 +46,7 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$") static int function_fieldqty(struct ast_channel *chan, char *cmd, char *parse, char *buf, size_t len) { - char *varname = NULL, *varsubst, varval[8192] = "", *varval2 = varval; + char *varsubst, varval[8192] = "", *varval2 = varval; int fieldcount = 0; AST_DECLARE_APP_ARGS(args, AST_APP_ARG(varname); @@ -55,9 +55,9 @@ static int function_fieldqty(struct ast_channel *chan, char *cmd, AST_STANDARD_APP_ARGS(args, parse); if (args.delim) { - varsubst = alloca(strlen(varname) + 4); + varsubst = alloca(strlen(args.varname) + 4); - sprintf(varsubst, "${%s}", varname); + sprintf(varsubst, "${%s}", args.varname); pbx_substitute_variables_helper(chan, varsubst, varval, sizeof(varval) - 1); while (strsep(&varval2, args.delim)) fieldcount++; |