diff options
Diffstat (limited to 'vm_eval.c')
-rw-r--r-- | vm_eval.c | 5 |
1 files changed, 4 insertions, 1 deletions
@@ -1198,7 +1198,10 @@ eval_string_with_cref(VALUE self, VALUE src, VALUE scope, NODE *cref, const char if (rb_obj_is_kind_of(scope, rb_cBinding)) { GetBindingPtr(scope, bind); envval = bind->env; - if (strcmp(file, "(eval)") == 0 && bind->path != Qnil) { + if (strcmp(file, "(eval)") != 0) { + absolute_path = rb_str_new_cstr(file); + } + else if (bind->path != Qnil) { file = RSTRING_PTR(bind->path); line = bind->first_lineno; absolute_path = rb_current_realfilepath(); |