summaryrefslogtreecommitdiff
path: root/load.c
diff options
context:
space:
mode:
authormrkn <mrkn@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2011-07-10 06:32:06 +0000
committermrkn <mrkn@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2011-07-10 06:32:06 +0000
commit564fb6a795b8a9692664f3c541d5aec4fd1f69c7 (patch)
tree9fb82987be69d619ca6747f2ac3cd2fff94cd69f /load.c
parent8c812c9a03027617b3681205544a26f297d4d641 (diff)
* load.c (rb_f_autoload): prevent to autoload for singleton
classes. fixes [Bug #4886] [ruby-dev:43816] * bootstraptest/test_autoload.rb: add tests for the above change. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32489 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'load.c')
-rw-r--r--load.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/load.c b/load.c
index b819bf37f9..62e2cac4c6 100644
--- a/load.c
+++ b/load.c
@@ -722,7 +722,7 @@ rb_mod_autoload_p(VALUE mod, VALUE sym)
static VALUE
rb_f_autoload(VALUE obj, VALUE sym, VALUE file)
{
- VALUE klass = rb_vm_cbase();
+ VALUE klass = rb_class_real(rb_vm_cbase());
if (NIL_P(klass)) {
rb_raise(rb_eTypeError, "Can not set autoload on singleton class");
}