summaryrefslogtreecommitdiff
path: root/vm.c
diff options
context:
space:
mode:
authorJean Boussier <[email protected]>2025-05-19 15:05:06 +0200
committerJean Boussier <[email protected]>2025-05-19 15:06:08 +0200
commit83d636f2d01f6bc1fd044a6f6c3071303b68dd82 ()
treef8411d9971987e9425c1935f7bed425c6a6a2efc /vm.c
parent40c957ba2153bc60aec95924b56dca9bf52c77ee (diff)
Free shapes last
[Bug #21352] `rb_objspace_free_objects` may need to check objects shapes to know how to free them.
-rw-r--r--vm.c7
1 files changed, 3 insertions, 4 deletions
@@ -3162,8 +3162,6 @@ ruby_vm_destruct(rb_vm_t *vm)
// TODO: Is this ignorable for classext->m_tbl ?
// rb_id_table_free(RCLASS(rb_mRubyVMFrozenCore)->m_tbl);
- rb_shape_free_all();
-
st_free_table(vm->static_ext_inits);
rb_vm_postponed_job_free();
@@ -3222,11 +3220,12 @@ ruby_vm_destruct(rb_vm_t *vm)
ruby_mimfree(vm);
ruby_current_vm_ptr = NULL;
-#if USE_YJIT
if (rb_free_at_exit) {
rb_yjit_free_at_exit();
- }
#endif
}
RUBY_FREE_LEAVE("vm");
return 0;