summaryrefslogtreecommitdiff
path: root/ractor.c
diff options
context:
space:
mode:
authorQuang-Minh Nguyen <nguyenquangminh0711@gmail.com>2020-09-18 13:02:14 +0700
committerKoichi Sasada <ko1@atdot.net>2020-09-20 23:10:44 +0900
commit398da71175ef9154be505155c0b1c0b2efb20445 (patch)
tree1a06a4e5c65e15c40f3a55649eedd2b8bc7d93f0 /ractor.c
parentd5fa66156ab116df558448402b93c9c129b30291 (diff)
Validate name during initialization
Notes
Notes: Merged: https://github.com/ruby/ruby/pull/3555
Diffstat (limited to 'ractor.c')
-rw-r--r--ractor.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/ractor.c b/ractor.c
index 0ae0070b02..55622999f0 100644
--- a/ractor.c
+++ b/ractor.c
@@ -1310,6 +1310,16 @@ ractor_init(rb_ractor_t *r, VALUE name, VALUE loc)
rb_ractor_living_threads_init(r);
// naming
+ if (!NIL_P(name)) {
+ rb_encoding *enc;
+ StringValueCStr(name);
+ enc = rb_enc_get(name);
+ if (!rb_enc_asciicompat(enc)) {
+ rb_raise(rb_eArgError, "ASCII incompatible encoding (%s)",
+ rb_enc_name(enc));
+ }
+ name = rb_str_new_frozen(name);
+ }
r->name = name;
r->loc = loc;
}