X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~mdw/git/mLib/blobdiff_plain/43f490c377cb05d1ac6e7d2c27a06ae940e2c047..a077a9a931a4b81abf0f549d7f463ae75075149a:/test/tvec-bench.c diff --git a/test/tvec-bench.c b/test/tvec-bench.c index c4e123d..6201219 100644 --- a/test/tvec-bench.c +++ b/test/tvec-bench.c @@ -261,8 +261,10 @@ void tvec_benchsetup(struct tvec_state *tv, const struct tvec_env *env, bc->be = be; bc->bst = 0; bc->subctx = 0; if (!tvec_benchprep(tv, be->bst, BTF_INDIRECT)) { bc->bst = *be->bst; bc->dflt_target = bc->bst->target_s; } - if (subenv && subenv->ctxsz) bc->subctx = x_alloc(tv->a, subenv->ctxsz); - if (subenv && subenv->setup) subenv->setup(tv, subenv, bc, bc->subctx); + if (subenv && subenv->ctxsz) + bc->subctx = pool_alloc(tv->p_group, subenv->ctxsz); + if (subenv && subenv->setup) + subenv->setup(tv, subenv, bc, bc->subctx); } /* --- @tvec_benchfindvar@, @setvar@ --- * @@ -438,7 +440,6 @@ void tvec_benchteardown(struct tvec_state *tv, void *ctx) /* Tear down any subsidiary environment. */ if (subenv && subenv->teardown) subenv->teardown(tv, bc->subctx); - if (bc->subctx) x_free(tv->a, bc->subctx); /* If the benchmark state was temporary, then dispose of it. */ if (bc->bst) {