summaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorMasamitsu MURASE <[email protected]>2012-06-24 17:38:20 +0900
committerMasamitsu MURASE <[email protected]>2012-06-24 17:38:20 +0900
commite53eea76eb1da7cb9b5b2da52e3244a0f521972a (patch)
tree51963e77443480a220a02884a0ed6fed5ce241ab /src
parent9a1f58874953e37af538a8fde3792817a88e4e1c (diff)
downloadmruby-e53eea76eb1da7cb9b5b2da52e3244a0f521972a.tar.gz
mruby-e53eea76eb1da7cb9b5b2da52e3244a0f521972a.zip
Modify gc_gray_mark for Struct.
Diffstat (limited to 'src')
-rw-r--r--src/gc.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/gc.c b/src/gc.c
index 23d22765c..1010a6749 100644
--- a/src/gc.c
+++ b/src/gc.c
@@ -626,6 +626,15 @@ gc_gray_mark(mrb_state *mrb, struct RBasic *obj)
break;
#endif
+#ifdef ENABLE_STRUCT
+ case MRB_TT_STRUCT:
+ {
+ struct RStruct *s = (struct RStruct*)obj;
+ children += s->len;
+ }
+ break;
+#endif
+
default:
break;
}