From 376bc46af562397e0fdf336ddde991e6c83a970e Mon Sep 17 00:00:00 2001 From: Russell Bryant Date: Tue, 17 May 2005 16:45:42 +0000 Subject: prevent copying of NULL (bug #4307) git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@5708 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- funcs/func_logic.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'funcs/func_logic.c') diff --git a/funcs/func_logic.c b/funcs/func_logic.c index d20b7719f..8df1732ba 100755 --- a/funcs/func_logic.c +++ b/funcs/func_logic.c @@ -52,12 +52,14 @@ static char *builtin_function_if(struct ast_channel *chan, char *cmd, char *data *iffalse = '\0'; iffalse++; } - } else - iffalse = ""; + } + if (expr && iftrue) { ret = ast_true(expr) ? iftrue : iffalse; - strncpy(buf, ret, len); - ret = buf; + if (ret) { + ast_copy_string(buf, ret, len); + ret = buf; + } } else { ast_log(LOG_WARNING, "Syntax $(if ?[][:])\n"); ret = NULL; -- cgit v1.2.3