]> git.ipfire.org Git - thirdparty/make.git/commitdiff
* variable.c (define_variable_in_set): Clear new structs
authorPaul Smith <psmith@gnu.org>
Sat, 11 May 2019 14:43:53 +0000 (10:43 -0400)
committerPaul Smith <psmith@gnu.org>
Sun, 12 May 2019 20:28:26 +0000 (16:28 -0400)
src/variable.c

index 11acbdfe1cc84f6e6df6bda761e03c3ff931d7b0..53ce62fadebb6cef6c1a4a1b69f010ccd5d4f4c2 100644 (file)
@@ -267,7 +267,7 @@ define_variable_in_set (const char *name, size_t length,
 
   /* Create a new variable definition and add it to the hash table.  */
 
-  v = xmalloc (sizeof (struct variable));
+  v = xcalloc (sizeof (struct variable));
   v->name = xstrndup (name, length);
   v->length = (unsigned int) length;
   hash_insert_at (&set->table, v, var_slot);
@@ -277,18 +277,10 @@ define_variable_in_set (const char *name, size_t length,
   v->value = xstrdup (value);
   if (flocp != 0)
     v->fileinfo = *flocp;
-  else
-    v->fileinfo.filenm = 0;
   v->origin = origin;
   v->recursive = recursive;
-  v->special = 0;
-  v->expanding = 0;
-  v->exp_count = 0;
-  v->per_target = 0;
-  v->append = 0;
-  v->private_var = 0;
-  v->export = v_default;
 
+  v->export = v_default;
   v->exportable = 1;
   if (*name != '_' && (*name < 'A' || *name > 'Z')
       && (*name < 'a' || *name > 'z'))