Commit 533ea58a authored by Kevin Modzelewski's avatar Kevin Modzelewski

Keep BoxedGenerator::args alive

Previously we would keep its elements alive but not the actual array itself?
I think this is what was crashing fasta.py, which is now working with
this change.

I couldn't reproduce the presumed bug in a smaller testcase though.
parent 1276f395
...@@ -252,6 +252,8 @@ extern "C" void generatorGCHandler(GCVisitor* v, Box* b) { ...@@ -252,6 +252,8 @@ extern "C" void generatorGCHandler(GCVisitor* v, Box* b) {
v->visit(g->arg2); v->visit(g->arg2);
if (num_args >= 3) if (num_args >= 3)
v->visit(g->arg3); v->visit(g->arg3);
if (g->args)
v->visit(g->args);
if (num_args > 3) if (num_args > 3)
v->visitPotentialRange(reinterpret_cast<void* const*>(&g->args->elts[0]), v->visitPotentialRange(reinterpret_cast<void* const*>(&g->args->elts[0]),
reinterpret_cast<void* const*>(&g->args->elts[num_args - 3])); reinterpret_cast<void* const*>(&g->args->elts[num_args - 3]));
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment