From 5ef3c7ea2d1968c87f361b6615699b92cc6e5a9a Mon Sep 17 00:00:00 2001 From: Nobuyoshi Nakada Date: Wed, 6 Jul 2022 18:08:31 +0900 Subject: [Bug #18898] Fallback invalid external encoding to the default --- io.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'io.c') diff --git a/io.c b/io.c index 3915fa9a72..efe1ad944a 100644 --- a/io.c +++ b/io.c @@ -2914,6 +2914,8 @@ io_enc_str(VALUE str, rb_io_t *fptr) return str; } +static rb_encoding *io_read_encoding(rb_io_t *fptr); + static void make_readconv(rb_io_t *fptr, int size) { @@ -2925,7 +2927,7 @@ make_readconv(rb_io_t *fptr, int size) ecopts = fptr->encs.ecopts; if (fptr->encs.enc2) { sname = rb_enc_name(fptr->encs.enc2); - dname = rb_enc_name(fptr->encs.enc); + dname = rb_enc_name(io_read_encoding(fptr)); } else { sname = dname = ""; -- cgit v1.2.1