From 0e343c9db786f1d22ec6e2c1c9bd52415211eba1 Mon Sep 17 00:00:00 2001 From: ko1 Date: Wed, 15 Aug 2007 09:58:59 +0000 Subject: * gc.c (os_live_obj): fix to skip T_VALUES. * sample/test.rb: add an ObjectSpace test. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@12943 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 6 ++++++ gc.c | 1 + sample/test.rb | 5 +++++ 3 files changed, 12 insertions(+) diff --git a/ChangeLog b/ChangeLog index d9ab9bb9b..da3df62d5 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +Wed Aug 15 18:57:30 2007 Koichi Sasada + + * gc.c (os_live_obj): fix to skip T_VALUES. + + * sample/test.rb: add an ObjectSpace test. + Wed Aug 15 16:49:04 2007 Koichi Sasada * inits.c (rb_call_inits): change initializing order. diff --git a/gc.c b/gc.c index 7a646a160..f187b0682 100644 --- a/gc.c +++ b/gc.c @@ -1698,6 +1698,7 @@ os_live_obj(void) switch (TYPE(p)) { case T_ICLASS: case T_NODE: + case T_VALUES: continue; case T_CLASS: if (FL_TEST(p, FL_SINGLETON)) continue; diff --git a/sample/test.rb b/sample/test.rb index 62695efbc..6dffa609d 100644 --- a/sample/test.rb +++ b/sample/test.rb @@ -2215,6 +2215,11 @@ l = [] GC.start test_ok true # reach here or dumps core +ObjectSpace.each_object{|o| + o.class.name +} +test_ok true # reach here or dumps core + if $failed > 0 printf "not ok/test: %d failed %d\n", $ntest, $failed else -- cgit