summaryrefslogtreecommitdiff
path: root/main.c
diff options
context:
space:
mode:
Diffstat (limited to 'main.c')
-rw-r--r--main.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/main.c b/main.c
index fa0498f..27d3a6e 100644
--- a/main.c
+++ b/main.c
@@ -3406,9 +3406,14 @@ die (int status)
if (output_context)
{
- assert (output_context == &make_sync);
+ /* die() might be called in a recipe output context due to an
+ $(error ...) function. */
+ output_close (output_context);
+
+ if (output_context != &make_sync)
+ output_close (&make_sync);
+
OUTPUT_UNSET ();
- output_close (&make_sync);
}
output_close (NULL);