summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorknu <knu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-10-25 11:07:52 +0000
committerknu <knu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-10-25 11:07:52 +0000
commitbc078709a5effaee9dfc6a0e50a2c16a457d48d4 (patch)
tree17a71f8ddf512f2fc12798a5cc4a26c5b39388fb
parent2f5f40bdd1eb0fe79e51bb5f71f2c8193f0e41fa (diff)
* 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
-rw-r--r--ChangeLog6
-rw-r--r--object.c2
2 files changed, 7 insertions, 1 deletions
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 <knu@iDaemons.org>
+
+ * 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 <knu@iDaemons.org>
* 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;
}