mirror of
https://github.com/ruby/ruby.git
synced 2025-09-15 16:44:01 +02:00
vm_eval.c: Check_TypedStruct
* vm_eval.c (eval_string_with_cref): check by Check_TypedStruct instead of rb_obj_is_kind_of. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42108 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
62b8b4df78
commit
03813f6dac
4 changed files with 11 additions and 9 deletions
|
@ -1202,8 +1202,8 @@ eval_string_with_cref(VALUE self, VALUE src, VALUE scope, NODE *cref, const char
|
|||
VALUE absolute_path = Qnil;
|
||||
|
||||
if (scope != Qnil) {
|
||||
if (rb_obj_is_kind_of(scope, rb_cBinding)) {
|
||||
GetBindingPtr(scope, bind);
|
||||
bind = Check_TypedStruct(scope, &ruby_binding_data_type);
|
||||
{
|
||||
envval = bind->env;
|
||||
if (strcmp(file, "(eval)") != 0) {
|
||||
absolute_path = rb_str_new_cstr(file);
|
||||
|
@ -1214,11 +1214,6 @@ eval_string_with_cref(VALUE self, VALUE src, VALUE scope, NODE *cref, const char
|
|||
absolute_path = rb_current_realfilepath();
|
||||
}
|
||||
}
|
||||
else {
|
||||
rb_raise(rb_eTypeError,
|
||||
"wrong argument type %s (expected Binding)",
|
||||
rb_obj_classname(scope));
|
||||
}
|
||||
GetEnvPtr(envval, env);
|
||||
base_block = &env->block;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue