From 0eb552742489bf71808edddcd83f98ff8e545f03 Mon Sep 17 00:00:00 2001 From: tilghman Date: Sat, 14 Jan 2006 19:06:44 +0000 Subject: Bug 6238 - Fix segfault when delimiter not specified git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.2@8074 f38db490-d61c-443f-a65b-d21fe96a405b --- funcs/func_strings.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/funcs/func_strings.c b/funcs/func_strings.c index 91564d9e4..503611bbe 100644 --- a/funcs/func_strings.c +++ b/funcs/func_strings.c @@ -48,8 +48,12 @@ static char *function_fieldqty(struct ast_channel *chan, char *cmd, char *data, if (delim) { varname = strsep(&delim, "|"); pbx_retrieve_variable(chan, varname, &varval, workspace, sizeof(workspace), NULL); - while (strsep(&varval, delim)) - fieldcount++; + if (delim) { + while (strsep(&varval, delim)) + fieldcount++; + } else if (!ast_strlen_zero(varval)) { + fieldcount = 1; + } snprintf(buf, len, "%d", fieldcount); } else { ast_log(LOG_ERROR, "Out of memory\n"); -- cgit v1.2.3