summaryrefslogtreecommitdiff
path: root/include/ruby/internal/encoding
diff options
context:
space:
mode:
authorHiroshi SHIBATA <hsbt@ruby-lang.org>2025-03-13 13:28:51 +0900
committerHiroshi SHIBATA <hsbt@ruby-lang.org>2025-03-13 14:27:06 +0900
commit774e3f0003ac53d604fb5dd080faf9cb41c21bcd (patch)
tree077e535dafdb31910890562d9e3492e9063ff9a1 /include/ruby/internal/encoding
parentf89a334b555d9f91f0bb5a7c58b3097960dd7fb8 (diff)
merge revision(s) 08b3a45bc97c835b4677bf76dbce68fd51d81897: [Backport #21180]
Push a real iseq in rb_vm_push_frame_fname() Previously, vm_make_env_each() (used during proc creation and for the debug inspector C API) picked up the non-GC-allocated iseq that rb_vm_push_frame_fname() creates, which led to a SEGV when the GC tried to mark the non GC object. Put a real iseq imemo instead. Speed should be about the same since the old code also did a imemo allocation and a malloc allocation. Real iseq allows ironing out the special-casing of dummy frames in rb_execution_context_mark() and rb_execution_context_update(). A check is added to RubyVM::ISeq#eval, though, to stop attempts to run dummy iseqs. [Bug #21180] Co-authored-by: Aaron Patterson <tenderlove@ruby-lang.org>
Diffstat (limited to 'include/ruby/internal/encoding')
0 files changed, 0 insertions, 0 deletions