From 5b1bf8dd2d08ae7371ecf025967376bb794ed651 Mon Sep 17 00:00:00 2001 From: Nobuyoshi Nakada Date: Tue, 13 Aug 2019 23:23:43 +0900 Subject: UTF LE is fixed at least the first 2 bytes * io.c (io_strip_bom): if the first 2 bytes are 0xFF0xFE, it should be a little-endian UTF, 16 or 32. [Bug #16099] --- io.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) (limited to 'io.c') diff --git a/io.c b/io.c index 69dbc93cff..6a4c5b978b 100644 --- a/io.c +++ b/io.c @@ -6136,12 +6136,9 @@ io_strip_bom(VALUE io) return ENCINDEX_UTF_32LE; } rb_io_ungetbyte(io, b4); - rb_io_ungetbyte(io, b3); - } - else { - rb_io_ungetbyte(io, b3); - return ENCINDEX_UTF_16LE; } + rb_io_ungetbyte(io, b3); + return ENCINDEX_UTF_16LE; } rb_io_ungetbyte(io, b2); break; -- cgit v1.2.3