Skip to content
Permalink
Browse files
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
  • Loading branch information
Carlo Prelz committed Feb 26, 2016
1 parent 0c23d5a commit d6cbe1bfc6bb7b21cc779dd48aa042b71c8c94dc
Showing 1 changed file with 1 addition and 1 deletion.
@@ -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;

0 comments on commit d6cbe1b

Please sign in to comment.