diff --git a/ruby.c b/ruby.c index b9648bf155a..f33b86419d5 100644 --- a/ruby.c +++ b/ruby.c @@ -2227,7 +2227,7 @@ prism_script(ruby_cmdline_options_t *opt, pm_parse_result_t *result) const bool read_stdin = (strcmp(opt->script, "-") == 0); if (read_stdin) { - pm_options_encoding_set(options, rb_enc_name(rb_locale_encoding())); + pm_options_encoding_set(options, rb_enc_name(IF_UTF8_PATH(rb_utf8_encoding(), rb_locale_encoding()))); } if (opt->src.enc.name != 0) { pm_options_encoding_set(options, StringValueCStr(opt->src.enc.name)); @@ -2844,7 +2844,7 @@ load_file_internal(VALUE argp_v) enc = rb_enc_from_index(opt->src.enc.index); } else if (f == rb_stdin) { - enc = rb_locale_encoding(); + enc = IF_UTF8_PATH(rb_utf8_encoding(), rb_locale_encoding()); } else { enc = rb_utf8_encoding();