summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2006-05-22 04:41:36 +0000
committermatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2006-05-22 04:41:36 +0000
commitaf89971287b1302a845796922deeeffbf06a6929 (patch)
tree023bfc556476e071dc0aa7cafbe9d1486fa5184d
parent3326cc9e053475a123b475ab2b17d9dcfd4aef88 (diff)
* eval.c (ev_const_get): should support constant access from
within instance_eval(). [ruby-dev:28327] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10169 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog5
-rw-r--r--eval.c2
2 files changed, 6 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index f984d1784a..7e3f39d944 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Mon May 22 13:38:57 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
+
+ * eval.c (ev_const_get): should support constant access from
+ within instance_eval(). [ruby-dev:28327]
+
Thu May 18 17:51:32 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* time.c (time_timeval): should round for usec floating
diff --git a/eval.c b/eval.c
index 4698c34021..eebb663bcf 100644
--- a/eval.c
+++ b/eval.c
@@ -1892,7 +1892,7 @@ ev_const_get(cref, id, self)
}
cbase = cbase->nd_next;
}
- return rb_const_get(cref->nd_clss, id);
+ return rb_const_get(NIL_P(cref->nd_clss) ? CLASS_OF(self): cref->nd_clss, id);
}
static VALUE