From afdafc85cee182fc35dadf5ada258e7feea26505 Mon Sep 17 00:00:00 2001
From: Mark Spencer <markster@digium.com>
Date: Mon, 22 Apr 2002 15:14:18 +0000
Subject: [PATCH] Version 0.1.12 from FTP

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

diff --git a/config.c b/config.c
index 42e2f6a535..d758d7fac1 100755
--- a/config.c
+++ b/config.c
@@ -177,6 +177,7 @@ static int cfg_process(struct ast_config *tmp, struct ast_category **_tmpc, stru
 						"Out of memory, line %d\n", lineno);
 					return -1;
 				}
+				memset(*_tmpc, 0, sizeof(struct ast_category));
 				strncpy((*_tmpc)->name, cur+1, sizeof((*_tmpc)->name) - 1);
 				(*_tmpc)->root =  NULL;
 				(*_tmpc)->next = tmp->root;
@@ -237,6 +238,7 @@ static int cfg_process(struct ast_config *tmp, struct ast_category **_tmpc, stru
 					c++;
 				v = malloc(sizeof(struct ast_variable));
 				if (v) {
+					memset(v, 0, sizeof(struct ast_variable));
 					v->next = NULL;
 					v->name = strdup(strip(cur));
 					v->value = strdup(strip(c));
@@ -283,7 +285,8 @@ static struct ast_config *__ast_load(char *configfile, struct ast_config *tmp, s
 			ast_verbose( "Found\n");
 		if (!tmp) {
 			tmp = malloc(sizeof(struct ast_config));
-			tmp->root = NULL;
+			if (tmp)
+				memset(tmp, 0, sizeof(struct ast_config));
 		}
 		if (!tmp) {
 			ast_log(LOG_WARNING, "Out of memory\n");
-- 
GitLab