summaryrefslogtreecommitdiffhomepage
path: root/src/error.c
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2017-05-01 19:16:16 +0900
committerYukihiro "Matz" Matsumoto <[email protected]>2017-05-23 23:50:42 +0900
commit497b19ce22e2c48339695b8a9943c21db2f2a7dd (patch)
tree45f58cc556480a1adc70b00a71705b5184dd222c /src/error.c
parenta1ea2a670c781848deec3ecb8657fc4aa3b8d34b (diff)
downloadmruby-497b19ce22e2c48339695b8a9943c21db2f2a7dd.tar.gz
mruby-497b19ce22e2c48339695b8a9943c21db2f2a7dd.zip
Support the case when the backtrace is not an array.
Diffstat (limited to 'src/error.c')
-rw-r--r--src/error.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/error.c b/src/error.c
index 13373d8f8..5bb547afe 100644
--- a/src/error.c
+++ b/src/error.c
@@ -174,7 +174,7 @@ exc_get_backtrace(mrb_state *mrb, mrb_value exc)
attr_name = mrb_intern_lit(mrb, "backtrace");
backtrace = mrb_iv_get(mrb, exc, attr_name);
- if (mrb_nil_p(backtrace)) {
+ if (!mrb_array_p(backtrace)) {
if (mrb_obj_ptr(exc) == mrb->backtrace.exc && mrb->backtrace.n > 0) {
backtrace = mrb_restore_backtrace(mrb);
mrb->backtrace.n = 0;