Module Name: src Committed By: rillig Date: Sat Oct 31 12:04:24 UTC 2020
Modified Files: src/usr.bin/make: meta.c Log Message: make(1): make memory allocation simpler in meta_create and meta_oodate Since there is only a single variable left that needs to be freed at the end (and probably never actually needs to be freed since nobody defines an environment variable named .OBJDIR), there is no need to loop over these variables. To generate a diff of this commit: cvs rdiff -u -r1.135 -r1.136 src/usr.bin/make/meta.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/usr.bin/make/meta.c diff -u src/usr.bin/make/meta.c:1.135 src/usr.bin/make/meta.c:1.136 --- src/usr.bin/make/meta.c:1.135 Sat Oct 31 11:54:33 2020 +++ src/usr.bin/make/meta.c Sat Oct 31 12:04:24 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: meta.c,v 1.135 2020/10/31 11:54:33 rillig Exp $ */ +/* $NetBSD: meta.c,v 1.136 2020/10/31 12:04:24 rillig Exp $ */ /* * Implement 'meta' mode. @@ -474,13 +474,11 @@ meta_create(BuildMon *pbm, GNode *gn) const char *tname; char *fname; const char *cp; - void *p[5]; /* >= possible uses */ - int i; + void *objdir_freeIt; mf.fp = NULL; - i = 0; - dname = Var_Value(".OBJDIR", gn, &p[i++]); + dname = Var_Value(".OBJDIR", gn, &objdir_freeIt); tname = GNode_VarTarget(gn); /* if this succeeds objdir is realpath of dname */ @@ -549,9 +547,7 @@ meta_create(BuildMon *pbm, GNode *gn) gn->type |= OP_SILENT; } out: - for (i--; i >= 0; i--) { - bmake_free(p[i]); - } + bmake_free(objdir_freeIt); return mf.fp; } @@ -1090,16 +1086,13 @@ meta_oodate(GNode *gn, Boolean oodate) FILE *fp; Boolean needOODATE = FALSE; StringList *missingFiles; - void *pa[4]; /* >= possible uses */ - int i; int have_filemon = FALSE; + void *objdir_freeIt; if (oodate) return oodate; /* we're done */ - i = 0; - - dname = Var_Value(".OBJDIR", gn, &pa[i++]); + dname = Var_Value(".OBJDIR", gn, &objdir_freeIt); tname = GNode_VarTarget(gn); /* if this succeeds fname3 is realpath of dname */ @@ -1612,9 +1605,7 @@ meta_oodate(GNode *gn, Boolean oodate) } oodate_out: - for (i--; i >= 0; i--) { - bmake_free(pa[i]); - } + bmake_free(objdir_freeIt); return oodate; }