diff options
| author | Yukihiro "Matz" Matsumoto <[email protected]> | 2021-04-19 15:36:42 +0900 |
|---|---|---|
| committer | Yukihiro "Matz" Matsumoto <[email protected]> | 2021-04-19 15:49:50 +0900 |
| commit | 2275e76262686b0ac0b94d64b73eadc1adfcc1c4 (patch) | |
| tree | 319fa16bbc3b988b523d9ff1d492739d370fb93d /src/backtrace.c | |
| parent | 85808e50b039f8091020f36c8e6e5fcc36bb4115 (diff) | |
| download | mruby-2275e76262686b0ac0b94d64b73eadc1adfcc1c4.tar.gz mruby-2275e76262686b0ac0b94d64b73eadc1adfcc1c4.zip | |
backtrace.c: pedantic check for empty backtrace; ref #5394
Diffstat (limited to 'src/backtrace.c')
| -rw-r--r-- | src/backtrace.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/backtrace.c b/src/backtrace.c index d7a8a0cdb..01d4143ab 100644 --- a/src/backtrace.c +++ b/src/backtrace.c @@ -197,6 +197,7 @@ mrb_unpack_backtrace(mrb_state *mrb, mrb_value backtrace) bt = (struct backtrace_location*)mrb_data_check_get_ptr(mrb, backtrace, &bt_type); if (bt == NULL) goto empty_backtrace; n = (mrb_int)RDATA(backtrace)->flags; + if (n == 0) goto empty_backtrace; backtrace = mrb_ary_new_capa(mrb, n); ai = mrb_gc_arena_save(mrb); for (i = 0; i < n; i++) { |
