aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorlemon <lsof@mailbox.org>2025-12-20 12:11:34 +0100
committerlemon <lsof@mailbox.org>2025-12-20 12:11:34 +0100
commit2b424fd89b12d7f2eb3a8c9ca872bb4318179d46 (patch)
tree9cab1e51881d1a700955dc1b2dfb1b0a1d0d3f87
parent640d5e95560d3c9099a58e09a93831197b863a2b (diff)
quit after emitting too many errors
-rw-r--r--io.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/io.c b/io.c
index cbb8568..35da15a 100644
--- a/io.c
+++ b/io.c
@@ -1099,6 +1099,7 @@ fatal(const struct span *span, const char *fmt, ...)
}
int nerror;
+enum { MAXERROR = 20 };
void
error(const struct span *span, const char *fmt, ...)
@@ -1109,6 +1110,10 @@ error(const struct span *span, const char *fmt, ...)
va_start(ap, fmt);
vdiag(span, DGERROR, fmt, ap);
va_end(ap);
+ if (nerror > MAXERROR) {
+ efmt("Too many errors emitted, stopping now.\n");
+ exit(1);
+ }
}
void