boot_defclass: super may be NULL

This commit is contained in:
Yukihiro "Matz" Matsumoto
2014-02-27 08:21:39 +09:00
parent 62071f7afe
commit b31a90614d
+7 -2
View File
@@ -731,8 +731,13 @@ boot_defclass(mrb_state *mrb, struct RClass *super)
struct RClass *c;
c = (struct RClass*)mrb_obj_alloc(mrb, MRB_TT_CLASS, mrb->class_class);
c->super = super ? super : mrb->object_class;
mrb_field_write_barrier(mrb, (struct RBasic*)c, (struct RBasic*)super);
if (super) {
c->super = super;
mrb_field_write_barrier(mrb, (struct RBasic*)c, (struct RBasic*)super);
}
else {
c->super = mrb->object_class;
}
c->mt = kh_init(mt, mrb);
return c;
}