summaryrefslogtreecommitdiffhomepage
path: root/src/class.c
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2013-07-13 23:28:59 +0900
committerYukihiro "Matz" Matsumoto <[email protected]>2013-07-13 23:28:59 +0900
commit5b3d531d794c94c08c808a7d50309bdebe20bf56 (patch)
tree65d9fc8ad920635597fde7089c06c05119681c5d /src/class.c
parent24fb4bf17a12188c41470d96fc1624f29868f229 (diff)
downloadmruby-5b3d531d794c94c08c808a7d50309bdebe20bf56.tar.gz
mruby-5b3d531d794c94c08c808a7d50309bdebe20bf56.zip
singleton class super initialize failed
Diffstat (limited to 'src/class.c')
-rw-r--r--src/class.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/class.c b/src/class.c
index ee5f544dd..9868d0080 100644
--- a/src/class.c
+++ b/src/class.c
@@ -69,7 +69,10 @@ prepare_singleton_class(mrb_state *mrb, struct RBasic *o)
sc->iv = 0;
if (o->tt == MRB_TT_CLASS) {
c = (struct RClass*)o;
- if (c->super) {
+ if (!c->super) {
+ sc->super = mrb->class_class;
+ }
+ else {
sc->super = c->super->c;
}
}