From bc078709a5effaee9dfc6a0e50a2c16a457d48d4 Mon Sep 17 00:00:00 2001 From: knu Date: Sun, 25 Oct 2009 11:07:52 +0000 Subject: [PATCH] * object.c (rb_class_initialize): The inherited hook should be run immediately after a new subclass is created, which is before evaluating a given block. [Backport #621] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@25470 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 6 ++++++ object.c | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 835cc58ee7..3221562ea5 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +Sun Oct 25 20:04:35 2009 Akinori MUSHA + + * object.c (rb_class_initialize): The inherited hook should be run + immediately after a new subclass is created, which is before + evaluating a given block. [Backport #621] + Sun Oct 25 20:02:46 2009 Akinori MUSHA * configure.in: Fix syntax error. when() is not defined in this diff --git a/object.c b/object.c index 7124c2434f..4704ebfc30 100644 --- a/object.c +++ b/object.c @@ -1567,8 +1567,8 @@ rb_class_initialize(argc, argv, klass) } RCLASS(klass)->super = super; rb_make_metaclass(klass, RBASIC(super)->klass); - rb_mod_initialize(klass); rb_class_inherited(super, klass); + rb_mod_initialize(klass); return klass; }