diff options
author | Quang-Minh Nguyen <[email protected]> | 2020-09-18 13:02:14 +0700 |
---|---|---|
committer | Koichi Sasada <[email protected]> | 2020-09-20 23:10:44 +0900 |
commit | 398da71175ef9154be505155c0b1c0b2efb20445 (patch) | |
tree | 1a06a4e5c65e15c40f3a55649eedd2b8bc7d93f0 /ractor.c | |
parent | d5fa66156ab116df558448402b93c9c129b30291 (diff) |
Validate name during initialization
Notes
Notes:
Merged: https://github.com/ruby/ruby/pull/3555
Diffstat (limited to 'ractor.c')
-rw-r--r-- | ractor.c | 10 |
1 files changed, 10 insertions, 0 deletions
@@ -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; } |