From 33e2e9d8aff7ee16aa5c071df93d6f9c0a37e53f Mon Sep 17 00:00:00 2001 From: Mosder Date: Thu, 17 Sep 2026 00:21:40 +0200 Subject: fix: fixed the bug with not enough allocation and not properly looping over the suppressed outputs in tester --- src/tester.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/tester.c b/src/tester.c index 9c1c27c..20bc340 100644 --- a/src/tester.c +++ b/src/tester.c @@ -164,8 +164,8 @@ void mos_suppress_output_fn(FILE **out) { if (!suppressed.outs || suppressed.n_outs >= suppressed.out_cap) { while (suppressed.n_outs >= suppressed.out_cap) suppressed.out_cap *= 2; - suppressed.outs = mos_safe_realloc(suppressed.outs, suppressed.out_cap * sizeof(int)); - suppressed.ogs = mos_safe_realloc(suppressed.ogs, suppressed.out_cap * sizeof(int)); + suppressed.outs = mos_safe_realloc(suppressed.outs, suppressed.out_cap * sizeof(FILE **)); + suppressed.ogs = mos_safe_realloc(suppressed.ogs, suppressed.out_cap * sizeof(FILE *)); } suppressed.outs[suppressed.n_outs] = out; suppressed.ogs[suppressed.n_outs++] = *out; @@ -185,7 +185,7 @@ void mos_unsuppress_outputs(void) { fflush(dev_null); for (size_t i = suppressed.n_outs; i-- > 0;) - *suppressed.outs = suppressed.ogs; + *suppressed.outs[i] = suppressed.ogs[i]; suppressed.n_outs = 0; } -- cgit v1.2.3