From: h.shirosaki@... Date: 2018-09-26T11:42:27+00:00 Subject: [ruby-core:89175] [Ruby trunk Bug#15162] Encoding::Converter.search_convpath(Encoding::ASCII_8BIT, Encoding::Emacs_Mule) crashes on MinGW Issue #15162 has been updated by h.shirosaki (Hiroshi Shirosaki). File 0001-transcode.c-add-GC-guard-on-raise.patch added I found a smaller test to reproduce SEGV. ``` $ ./miniruby -ve "loop do loop do loop do Encoding::Converter.search_convpath(Encoding::ASCII_8BIT, Encoding::ASCII_8BIT) end end end" ruby 2.6.0dev (2018-09-26 trunk 64852) [x64-mingw32] Segmentation fault ``` Maybe GC guard is not sufficient? Attached patch fixes SEGV on my test. ---------------------------------------- Bug #15162: Encoding::Converter.search_convpath(Encoding::ASCII_8BIT, Encoding::Emacs_Mule) crashes on MinGW https://bugs.ruby-lang.org/issues/15162#change-74202 * Author: Eregon (Benoit Daloze) * Status: Open * Priority: Normal * Assignee: * Target version: * ruby -v: ruby 2.6.0dev (2018-09-26) [x64-mingw32] * Backport: 2.3: UNKNOWN, 2.4: UNKNOWN, 2.5: UNKNOWN ---------------------------------------- It seems to work fine with String arguments, but not Encoding objects where it SEGV, at least in some runs. See https://github.com/ruby/ruby/commit/f00bf242724d40d59a242c6bf9e567d18c9e1872#commitcomment-30650955 cc @MSP-Greg ---Files-------------------------------- 0001-transcode.c-add-GC-guard-on-raise.patch (1.04 KB) -- https://bugs.ruby-lang.org/ Unsubscribe: