From e50754fcfaeb80bef93f043c13895ce386ddb18c Mon Sep 17 00:00:00 2001 From: Vinicius Stock Date: Tue, 8 Oct 2024 10:47:08 -0400 Subject: [ruby/prism] Avoid breaking code units offset on binary encoding https://github.com/ruby/prism/commit/25a4cf6794 Co-authored-by: Kevin Newton --- lib/prism/parse_result.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'lib') diff --git a/lib/prism/parse_result.rb b/lib/prism/parse_result.rb index ae026b42ac..aea5dee9fa 100644 --- a/lib/prism/parse_result.rb +++ b/lib/prism/parse_result.rb @@ -90,7 +90,7 @@ module Prism # concept of code units that differs from the number of characters in other # encodings, it is not captured here. def code_units_offset(byte_offset, encoding) - byteslice = (source.byteslice(0, byte_offset) or raise).encode(encoding) + byteslice = (source.byteslice(0, byte_offset) or raise).encode(encoding, invalid: :replace, undef: :replace) if encoding == Encoding::UTF_16LE || encoding == Encoding::UTF_16BE byteslice.bytesize / 2 -- cgit v1.2.3