summaryrefslogtreecommitdiff
path: root/vm.c
diff options
context:
space:
mode:
authorNobuyoshi Nakada <nobu@ruby-lang.org>2023-04-13 21:45:56 +0900
committerNobuyoshi Nakada <nobu@ruby-lang.org>2023-05-10 17:14:20 +0900
commit2d9bc3efe57fe0ec1a8171340c950fb98ca8c8f2 (patch)
tree497bb420e7e9ba043ffbab0c8348eb96d4af0d2a /vm.c
parent0e5aecea11d6d214bf578edfbbdb126ceb4762cb (diff)
downloadruby-2d9bc3efe57fe0ec1a8171340c950fb98ca8c8f2.tar.gz
[Bug #19597] Freeze script name
Diffstat (limited to 'vm.c')
-rw-r--r--vm.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/vm.c b/vm.c
index 20cd8edd7c..b6b8ca80f5 100644
--- a/vm.c
+++ b/vm.c
@@ -3979,7 +3979,8 @@ rb_vm_set_progname(VALUE filename)
rb_control_frame_t *cfp = (void *)(th->ec->vm_stack + th->ec->vm_stack_size);
--cfp;
- rb_iseq_pathobj_set(cfp->iseq, rb_str_dup(filename), rb_iseq_realpath(cfp->iseq));
+ filename = rb_str_new_frozen(filename);
+ rb_iseq_pathobj_set(cfp->iseq, filename, rb_iseq_realpath(cfp->iseq));
}
extern const struct st_hash_type rb_fstring_hash_type;