summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog6
-rw-r--r--object.c2
2 files changed, 7 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index b1719464c0..24363fe6d5 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+Sat Sep 29 09:12:02 2007 Tanaka Akira <akr@fsij.org>
+
+ * object.c (rb_class_real): use BUILTIN_TYPE instead of TYPE.
+ access flags directly intead of FL_TEST.
+ they are enough because cl argument is a class.
+
Sat Sep 29 08:57:15 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* include/ruby/win32.h (strcasecmp): needed for type_strcasehash.
diff --git a/object.c b/object.c
index e2b3e43bd0..a6ded56724 100644
--- a/object.c
+++ b/object.c
@@ -99,7 +99,7 @@ rb_obj_equal(VALUE obj1, VALUE obj2)
VALUE
rb_class_real(VALUE cl)
{
- while (FL_TEST(cl, FL_SINGLETON) || TYPE(cl) == T_ICLASS) {
+ while ((RBASIC(cl)->flags & FL_SINGLETON) || BUILTIN_TYPE(cl) == T_ICLASS) {
cl = RCLASS_SUPER(cl);
}
return cl;