summaryrefslogtreecommitdiff
path: root/gc.c
diff options
context:
space:
mode:
authormatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>1999-08-11 07:24:11 +0000
committermatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>1999-08-11 07:24:11 +0000
commitc5fb7cf4fb7759ae020032f344460c2accef2bc7 (patch)
tree37621427e11c9e2bf672c05c25b24bf0d365a639 /gc.c
parentb0faee9b9cd5a747e226a2c64f33588b2b8f4e6c (diff)
1.3.8 to be, final beta (hopefully)
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_3@513 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'gc.c')
-rw-r--r--gc.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/gc.c b/gc.c
index ce668cf..7e2a4f7 100644
--- a/gc.c
+++ b/gc.c
@@ -909,7 +909,13 @@ rb_gc()
rb_gc_mark_frame(frame);
}
for (frame = ruby_frame; frame; frame = frame->prev) {
- if (frame->tmp) rb_gc_mark_frame(frame->tmp);
+ if (frame->tmp) {
+ struct FRAME *tmp = frame->tmp;
+ while (tmp) {
+ rb_gc_mark_frame(tmp);
+ tmp = tmp->prev;
+ }
+ }
}
rb_gc_mark(ruby_class);
rb_gc_mark(ruby_scope);