summaryrefslogtreecommitdiffhomepage
path: root/src/gc.c
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2017-06-15 14:53:49 +0900
committerYukihiro "Matz" Matsumoto <[email protected]>2017-06-15 14:53:49 +0900
commit357e478e2cf9f4c695dea1b5efbc3783225576ee (patch)
treeea02c3a8b7746d400def7bb6fb0a393ded97d92c /src/gc.c
parent52443c80e23764956c253a43efaf1762262336a5 (diff)
downloadmruby-357e478e2cf9f4c695dea1b5efbc3783225576ee.tar.gz
mruby-357e478e2cf9f4c695dea1b5efbc3783225576ee.zip
Mark the exception object in the final marking phase; ref #3702
Diffstat (limited to 'src/gc.c')
-rw-r--r--src/gc.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/gc.c b/src/gc.c
index 475449b2f..1ac881d81 100644
--- a/src/gc.c
+++ b/src/gc.c
@@ -995,6 +995,7 @@ static void
final_marking_phase(mrb_state *mrb, mrb_gc *gc)
{
mark_context(mrb, mrb->c);
+ mrb_gc_mark(mrb, (struct RBasic*)mrb->exc);
gc_mark_gray_list(mrb, gc);
mrb_assert(gc->gray_list == NULL);
gc->gray_list = gc->atomic_gray_list;