Commit d6cbe1bf authored by Carlo Prelz's avatar Carlo Prelz

The original code crashed when mrb->backtrace.n grew to 16.

It looks like the logic to reallocate the backtrace was flawed,
based on the wrong variable (loc_raw->i, which, as I have verified,
decreases from 16 to 0 instead of increasing)

I am not sure if this is the correct fix
parent 0c23d5a3
......@@ -330,7 +330,7 @@ save_backtrace_i(mrb_state *mrb,
{
mrb_backtrace_entry *entry;
if (loc_raw->i >= mrb->backtrace.n_allocated) {
if (mrb->backtrace.n >= mrb->backtrace.n_allocated) {
int new_n_allocated;
if (mrb->backtrace.n_allocated == 0) {
new_n_allocated = 8;
......
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