summaryrefslogtreecommitdiff
path: root/class.c
diff options
context:
space:
mode:
authormarcandre <marcandre@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2010-01-13 02:57:48 +0000
committermarcandre <marcandre@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2010-01-13 02:57:48 +0000
commitfb2941a4ec60cd396982f15e990696f733703e37 (patch)
treece21d5302f1a45fc34148262c20068c9ff063a7f /class.c
parent187a32495b0b2bf5c850ee0a6b70bf5e37070227 (diff)
* object.c (rb_class_initialize): Make sure BasicObject doesn't get initialized twice [ruby-core:27577]
* class.c (rb_class_init_copy): ditto git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26314 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'class.c')
-rw-r--r--class.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/class.c b/class.c
index 599cbd689e..6674ae1a9d 100644
--- a/class.c
+++ b/class.c
@@ -180,7 +180,7 @@ rb_mod_init_copy(VALUE clone, VALUE orig)
VALUE
rb_class_init_copy(VALUE clone, VALUE orig)
{
- if (RCLASS_SUPER(clone) != 0) {
+ if (RCLASS_SUPER(clone) != 0 || clone == rb_cBasicObject) {
rb_raise(rb_eTypeError, "already initialized class");
}
if (FL_TEST(orig, FL_SINGLETON)) {