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);
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++;