From 67850e8a9e80e82febe32ad127bf941f67eb28e3 Mon Sep 17 00:00:00 2001 From: nobu Date: Thu, 28 Dec 2017 08:28:42 +0000 Subject: proc.c: empty iseq names * proc.c (proc_binding): unified the name and realpath of an empty iseq. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61509 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- proc.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/proc.c b/proc.c index 23c4d3a2d4..0df71e2a4c 100644 --- a/proc.c +++ b/proc.c @@ -2844,12 +2844,15 @@ proc_binding(VALUE self) const struct vm_ifunc *ifunc = block->as.captured.code.ifunc; if (IS_METHOD_PROC_IFUNC(ifunc)) { VALUE method = (VALUE)ifunc->data; + VALUE name = rb_fstring_cstr(""); + rb_iseq_t *empty; binding_self = method_receiver(method); iseq = rb_method_iseq(method); env = VM_ENV_ENVVAL_PTR(block->as.captured.ep); env = env_clone(env, method_cref(method)); /* set empty iseq */ - RB_OBJ_WRITE(env, &env->iseq, rb_iseq_new(NULL, rb_str_new2(""), rb_str_new2(""), Qnil, 0, ISEQ_TYPE_TOP)); + empty = rb_iseq_new(NULL, name, name, Qnil, 0, ISEQ_TYPE_TOP); + RB_OBJ_WRITE(env, &env->iseq, empty); break; } else { -- cgit v1.2.3