diff options
| author | Yukihiro Matsumoto <[email protected]> | 2012-04-28 00:32:34 +0900 |
|---|---|---|
| committer | Yukihiro Matsumoto <[email protected]> | 2012-04-28 00:32:34 +0900 |
| commit | 32db0e5d8ca2aa2d8e7ce6577f9e0c5cee76ba0d (patch) | |
| tree | 38ae4bc1ebcaee6e4b9656a0c77e11561df140d3 /src/gc.c | |
| parent | 9e45eb185b50d7f45096b4edb0ec7ae49b6886b2 (diff) | |
| download | mruby-32db0e5d8ca2aa2d8e7ce6577f9e0c5cee76ba0d.tar.gz mruby-32db0e5d8ca2aa2d8e7ce6577f9e0c5cee76ba0d.zip | |
struct RString member should not be mrb_value
Diffstat (limited to 'src/gc.c')
| -rw-r--r-- | src/gc.c | 5 |
1 files changed, 3 insertions, 2 deletions
@@ -351,8 +351,9 @@ gc_mark_children(mrb_state *mrb, struct RBasic *obj) { struct RString *s = (struct RString*)obj; - if (s->flags & MRB_STR_SHARED) { - mrb_gc_mark_value(mrb, s->aux.shared) + while (s->flags & MRB_STR_SHARED) { + s = s->aux.shared; + if (!s) break; } } break; |
