Commit Diff


commit - 6ac6dfa14c6cef6193859611763cb5d5ac71ab4d
commit + 440a47ba473494ce5e7502a23bce7e6ed275d4ce
blob - 6e2cff82cea83062da19fa58ec27b7878dd5f6af
blob + af686781ce24358a1c645c3393dc823af6e6ef2f
--- make/make.c
+++ make/make.c
@@ -865,7 +865,6 @@ struct path *dir;
 			if (strcmp (sc->name, name) == 0) {
 				if (sc->type != SC_DIR)
 					errx (1, "%s: invalid type", path_to_str (mfpath));
-				sc->parent = parent;
 				goto parse;
 			}
 		}
@@ -876,11 +875,11 @@ struct path *dir;
 		sc = new (struct scope);
 		sc->type = SC_DIR;
 		sc->name = name;
-		sc->parent = parent;
 		sc->dir = NULL;
 	}
 
 parse:
+	sc->parent = parent;
 	path = strdup (path_to_str (mfpath));
 	parse (sc, dir, path);
 	free (path);