From 3a37332880a894b2a74d6f66537ca3224525e0ea Mon Sep 17 00:00:00 2001 From: Joshua Colp Date: Mon, 14 Jan 2008 15:07:30 +0000 Subject: Print out a warning when spaces are used in the variable name in Set and MSet. It is extremely hard to debug this issue so this should make it easier. (closes issue #11759) Reported by: caio1982 Patches: setvar_space_warning1.diff uploaded by caio1982 (license 22) git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@98714 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- main/pbx.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'main') diff --git a/main/pbx.c b/main/pbx.c index 0c0be0b93..3820c4615 100644 --- a/main/pbx.c +++ b/main/pbx.c @@ -7298,6 +7298,8 @@ int pbx_builtin_setvar(struct ast_channel *chan, void *data) mydata = ast_strdupa(data); name = strsep(&mydata, "="); value = mydata; + 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); @@ -7325,10 +7327,13 @@ static int pbx_builtin_setvar_multiple(struct ast_channel *chan, void *vdata) for (x = 0; x < args.argc; x++) { AST_NONSTANDARD_APP_ARGS(pair, args.pair[x], '='); - if (pair.argc == 2) + if (pair.argc == 2) { pbx_builtin_setvar_helper(chan, pair.name, pair.value); - else + if (strchr(pair.name, ' ')) + ast_log(LOG_WARNING, "Please avoid unnecessary spaces on variables as it may lead to unexpected results ('%s' set to '%s').\n", pair.name, pair.value); + } else { ast_log(LOG_WARNING, "MSet: ignoring entry '%s' with no '=' (in %s@%s:%d\n", pair.name, chan->exten, chan->context, chan->priority); + } } return 0; -- cgit v1.2.3