Module Name: src
Committed By: sjg
Date: Wed Mar 18 23:53:02 UTC 2020
Modified Files:
src/usr.bin/make: meta.c
Log Message:
Check for meta file corruption earlier and more often.
To generate a diff of this commit:
cvs rdiff -u -r1.79 -r1.80 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.79 src/usr.bin/make/meta.c:1.80
--- src/usr.bin/make/meta.c:1.79 Wed Feb 12 16:50:37 2020
+++ src/usr.bin/make/meta.c Wed Mar 18 23:53:02 2020
@@ -1,4 +1,4 @@
-/* $NetBSD: meta.c,v 1.79 2020/02/12 16:50:37 sjg Exp $ */
+/* $NetBSD: meta.c,v 1.80 2020/03/18 23:53:02 sjg Exp $ */
/*
* Implement 'meta' mode.
@@ -1558,6 +1558,7 @@ meta_oodate(GNode *gn, Boolean oodate)
if (buf[x - 1] == '\n')
buf[x - 1] = '\0';
}
+ CHECK_VALID_META(p);
if (!hasOODATE &&
!(gn->type & OP_NOMETA_CMP) &&
strcmp(p, cmd) != 0) {
@@ -1579,6 +1580,7 @@ meta_oodate(GNode *gn, Boolean oodate)
fprintf(debug_file, "%s: %d: there are extra build commands now that weren't in the meta data file\n", fname, lineno);
oodate = TRUE;
}
+ CHECK_VALID_META(p);
if (strcmp(p, cwd) != 0) {
if (DEBUG(META))
fprintf(debug_file, "%s: %d: the current working directory has changed from '%s' to '%s'\n", fname, lineno, p, curdir);