* eval.c (mnew): ignore metaclasses have no influence, for rklass.

[ruby-talk:74706]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4017 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
nobu 2003-06-30 08:53:10 +00:00
Родитель a40a92f04c
Коммит 6e85f9c99c
2 изменённых файлов: 9 добавлений и 0 удалений

Просмотреть файл

@ -1,3 +1,8 @@
Mon Jun 30 17:53:06 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* eval.c (mnew): ignore metaclasses have no influence, for rklass.
[ruby-talk:74706]
Sun Jun 29 06:59:07 2003 Masatoshi SEKI <m_seki@mva.biglobe.ne.jp>
* lib/drb/drb.rb, lib/drb/invokemethod.rb: import drb-2.0.4

4
eval.c
Просмотреть файл

@ -7268,6 +7268,10 @@ mnew(klass, obj, id, mklass)
goto again;
}
while (rklass != klass &&
(FL_TEST(rklass, FL_SINGLETON) || TYPE(rklass) == T_ICLASS)) {
rklass = RCLASS(rklass)->super;
}
if (TYPE(klass) == T_ICLASS) klass = RBASIC(klass)->klass;
method = Data_Make_Struct(mklass, struct METHOD, bm_mark, free, data);
data->klass = klass;