summaryrefslogtreecommitdiff
path: root/object.c
diff options
context:
space:
mode:
authortenderlove <tenderlove@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2012-10-27 01:51:58 +0000
committertenderlove <tenderlove@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2012-10-27 01:51:58 +0000
commit909bc583a4f5c5c09fd47b89f44005d66b8bc674 (patch)
tree8dcabd7a13f2aad9df360c6e8c1e6a2f8fbaa7b8 /object.c
parentd090f17f21c1b938e9aa97c14e9e2d7e079b4420 (diff)
* object.c (rb_mod_const_get): make sure the constant name is
converted to a string before searching. [ruby-core:48405] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37340 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'object.c')
-rw-r--r--object.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/object.c b/object.c
index a7eccb8ced..f3e5ec241b 100644
--- a/object.c
+++ b/object.c
@@ -1905,9 +1905,12 @@ rb_mod_const_get(int argc, VALUE *argv, VALUE mod)
}
if (SYMBOL_P(name)) {
- name = rb_sym_to_s(name);
+ name = rb_sym_to_s(name);
}
+ name = rb_check_string_type(name);
+ Check_Type(name, T_STRING);
+
enc = rb_enc_get(name);
path = RSTRING_PTR(name);