From a6f020197a9af30e4ae1ff9d64313ea97e1c4ca5 Mon Sep 17 00:00:00 2001 From: russell Date: Thu, 7 Oct 2010 10:53:56 +0000 Subject: Don't crash when Set() is called without a value. Review: https://reviewboard.asterisk.org/r/949/ git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.6.2@290712 f38db490-d61c-443f-a65b-d21fe96a405b --- main/pbx.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'main') diff --git a/main/pbx.c b/main/pbx.c index 62c9d8d2f..9fb0c8bb0 100644 --- a/main/pbx.c +++ b/main/pbx.c @@ -9111,11 +9111,18 @@ int pbx_builtin_setvar(struct ast_channel *chan, void *data) mydata = ast_strdupa(data); name = strsep(&mydata, "="); value = mydata; - if (strchr(name, ' ')) + if (!value) { + ast_log(LOG_WARNING, "Set requires an '=' to be a valid assignment.\n"); + return 0; + } + + if (strchr(name, ' ')) { ast_log(LOG_WARNING, "Please avoid unnecessary spaces on variables as it may lead to unexpected results ('%s' set to '%s').\n", name, mydata); + } pbx_builtin_setvar_helper(chan, name, value); - return(0); + + return 0; } int pbx_builtin_setvar_multiple(struct ast_channel *chan, void *vdata) -- cgit v1.2.3