[ruby-core:124901] [Ruby Bug#21931] GC Crash in `String#%` (backport 726205b354d1068147719fb42e1de743f1838ef1)
Issue #21931 has been reported by byroot (Jean Boussier). ---------------------------------------- Bug #21931: GC Crash in `String#%` (backport 726205b354d1068147719fb42e1de743f1838ef1) https://bugs.ruby-lang.org/issues/21931 * Author: byroot (Jean Boussier) * Status: Open * Backport: 3.2: WONTFIX, 3.3: REQUIRED, 3.4: REQUIRED, 4.0: REQUIRED ---------------------------------------- Reproduction ```ruby GC.stress = true class Args def to_ary Array.new(64) { "x" * 1024 } end end fmt = "%s" * 64 100_000.times do fmt % Args.new end ``` Patch that should be backported https://github.com/ruby/ruby/commit/726205b354d1068147719fb42e1de743f1838ef1 -- https://bugs.ruby-lang.org/
Issue #21931 has been updated by byroot (Jean Boussier). - 3.3 backport PR: https://github.com/ruby/ruby/pull/16288 - 3.4 backport PR: https://github.com/ruby/ruby/pull/16287 - 4.0 backport PR: https://github.com/ruby/ruby/pull/16286 ---------------------------------------- Bug #21931: GC Crash in `String#%` (backport 726205b354d1068147719fb42e1de743f1838ef1) https://bugs.ruby-lang.org/issues/21931#change-116565 * Author: byroot (Jean Boussier) * Status: Open * Backport: 3.2: WONTFIX, 3.3: REQUIRED, 3.4: REQUIRED, 4.0: REQUIRED ---------------------------------------- Reproduction ```ruby GC.stress = true class Args def to_ary Array.new(64) { "x" * 1024 } end end fmt = "%s" * 64 100_000.times do fmt % Args.new end ``` Patch that should be backported https://github.com/ruby/ruby/commit/726205b354d1068147719fb42e1de743f1838ef1 -- https://bugs.ruby-lang.org/
participants (1)
-
byroot (Jean Boussier)