From 601df24372c9cc56c4fa8521e64ca128eef0ac21 Mon Sep 17 00:00:00 2001
From: Mark Spencer <markster@digium.com>
Date: Sun, 3 Aug 2003 19:26:09 +0000
Subject: [PATCH] Remember they have to be zero filled

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@1257 65c4cc65-6c06-0410-ace0-fbb531ad65f3
---
 pbx/pbx_config.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/pbx/pbx_config.c b/pbx/pbx_config.c
index fb1fe6fb27..1514503c37 100755
--- a/pbx/pbx_config.c
+++ b/pbx/pbx_config.c
@@ -1538,7 +1538,7 @@ static int pbx_load_module(void)
 	char *cxt, *ext, *pri, *appl, *data, *tc, *cidmatch;
 	struct ast_context *con;
 	char *start, *end;
-	char realvalue[256] = "";
+	char realvalue[256];
 
 	cfg = ast_load(config);
 	if (cfg) {
@@ -1549,6 +1549,7 @@ static int pbx_load_module(void)
 			"writeprotect"));
 		v = ast_variable_browse(cfg, "globals");
 		while(v) {
+			memset(realvalue, 0, sizeof(realvalue));
 			pbx_substitute_variables_helper(NULL, v->value, realvalue, sizeof(realvalue) - 1);
 			pbx_builtin_setvar_helper(NULL, v->name, realvalue);
 			v = v->next;
@@ -1622,15 +1623,18 @@ static int pbx_load_module(void)
 							free(tc);
 						} else fprintf(stderr,"Error strdup returned NULL in %s\n",__PRETTY_FUNCTION__);
 					} else if(!strcasecmp(v->name, "include")) {
+						memset(realvalue, 0, sizeof(realvalue));
 						pbx_substitute_variables_helper(NULL, v->value, realvalue, sizeof(realvalue) - 1);
 						if (ast_context_add_include2(con, realvalue, registrar))
 							ast_log(LOG_WARNING, "Unable to include context '%s' in context '%s'\n", v->value, cxt);
 					} else if(!strcasecmp(v->name, "ignorepat")) {
+						memset(realvalue, 0, sizeof(realvalue));
 						pbx_substitute_variables_helper(NULL, v->value, realvalue, sizeof(realvalue) - 1);
 						if (ast_context_add_ignorepat2(con, realvalue, registrar))
 							ast_log(LOG_WARNING, "Unable to include ignorepat '%s' in context '%s'\n", v->value, cxt);
 					} else if (!strcasecmp(v->name, "switch")) {
 						char *stringp=NULL;
+						memset(realvalue, 0, sizeof(realvalue));
 						pbx_substitute_variables_helper(NULL, v->value, realvalue, sizeof(realvalue) - 1);
 						tc = realvalue;
 						stringp=tc;
-- 
GitLab