Remember they have to be zero filled
authorMark Spencer <markster@digium.com>
Sun, 3 Aug 2003 19:26:09 +0000 (19:26 +0000)
committerMark Spencer <markster@digium.com>
Sun, 3 Aug 2003 19:26:09 +0000 (19:26 +0000)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@1257 65c4cc65-6c06-0410-ace0-fbb531ad65f3

pbx/pbx_config.c

index fb1fe6f..1514503 100755 (executable)
@@ -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;