From cbfe6d75f6f61ee3acfa98bc62d80651f1e40c69 Mon Sep 17 00:00:00 2001 From: Roland McGrath Date: Thu, 21 Apr 1994 02:15:37 +0000 Subject: [PATCH] (update_goal_chain): Set STATUS to FILE->update_status, to preserve whether it's 2 for error or 1 for -q trigger. When STATUS gets nonzero and -q is set, always stop immediately. --- remake.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/remake.c b/remake.c index 479045e2..a280b52e 100644 --- a/remake.c +++ b/remake.c @@ -144,9 +144,14 @@ update_goal_chain (goals, makefiles) { if (file->update_status != 0) { - /* Updating failed. */ - status = 1; - stop = !keep_going_flag && !makefiles; + /* Updating failed, or -q triggered. + The STATUS value tells our caller which. */ + status = file->update_status; + /* If -q just triggered, stop immediately. + It doesn't matter how much more we run, + since we already know the answer to return. */ + stop = (!keep_going_flag && !question_flag + && !makefiles); } else if (MTIME (file) != mtime) {