aboutsummaryrefslogtreecommitdiff
path: root/src/tester.c
diff options
context:
space:
mode:
authorMosder <xmosder12@gmail.com>2026-08-17 11:05:06 +0200
committerMosder <xmosder12@gmail.com>2026-08-17 11:05:06 +0200
commit59b5ab2b1ccfcec55e64befb666632d6698113ed (patch)
tree9c0ab84008f310a4577b39616619ac89ff69f7ab /src/tester.c
parent3727b8b1308f731b86a6ff666ee75f44fe113674 (diff)
fix: fixed wrong allocation of outputs in tester + the fact that one of the arrays wasn't freed
Diffstat (limited to 'src/tester.c')
-rw-r--r--src/tester.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/tester.c b/src/tester.c
index 43efa07..280eed1 100644
--- a/src/tester.c
+++ b/src/tester.c
@@ -132,8 +132,8 @@ void mos_suppress_output(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);
- suppressed.ogs = mos_safe_realloc(suppressed.ogs, suppressed.out_cap);
+ 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;
@@ -234,6 +234,7 @@ void mos_free_tester(MosTester *tester) {
}
if (suppressed.outs) {
free(suppressed.outs);
+ free(suppressed.ogs);
suppressed.n_outs = 0;
}
}