mirror of
https://github.com/asterisk/asterisk.git
synced 2025-09-05 20:20:07 +00:00
Fix the FIELDQTY function to not crash. (reported by blitzrage and Corydon on IRC)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@53093 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -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++;
|
||||
|
Reference in New Issue
Block a user