Project

General

Profile

« Previous | Next » 

Revision a51a6bf6

Added by jhawthorn (John Hawthorn) 8 months ago

[Bug #20883] Fix coderange for sprintf on binary strings (#12040)

Fix update_coderange for binary strings

Although a binary (aka ASCII-8BIT) string will never have a broken
coderange, it still has to differentiate between "valid" and "7bit".

On Ruby 3.4/trunk this problem is masked because we now clear the
coderange more agressively in rb_str_resize, and we happened to always
be strinking this string, but we should not assume that.

On Ruby 3.3 this created strings where ascii_only? was true in cases
it shouldn't be as well as other problems.

Fixes [Bug #20883]

Co-authored-by: Daniel Colson
Co-authored-by: Matthew Draper