]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
Fix the FIELDQTY function to not crash. (reported by blitzrage and Corydon on IRC)
authorRussell Bryant <russell@russellbryant.com>
Thu, 1 Feb 2007 21:24:52 +0000 (21:24 +0000)
committerRussell Bryant <russell@russellbryant.com>
Thu, 1 Feb 2007 21:24:52 +0000 (21:24 +0000)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@53093 65c4cc65-6c06-0410-ace0-fbb531ad65f3

funcs/func_strings.c

index e4f943e3740dd77ec2428898ff8c69e5112d8f04..4787e0dee193155bb307381a2adad0e5f210e6dc 100644 (file)
@@ -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++;