aboutsummaryrefslogtreecommitdiffstats
path: root/gc
diff options
context:
space:
mode:
authorPeter Zhu <peter@peterzhu.ca>2024-07-18 13:44:38 -0400
committerPeter Zhu <peter@peterzhu.ca>2024-07-19 08:53:32 -0400
commit57d9b8ee07ca11e5de4038b53b3d7a58ea631ffd (patch)
tree731efa555767fc75bde1b9b8721339a91d0cd755 /gc
parente8aa9daa5bcb1993f2cddbf191cc46a7ad6bebed (diff)
downloadruby-57d9b8ee07ca11e5de4038b53b3d7a58ea631ffd.tar.gz
Assert that object is not frozen in rb_gc_impl_define_finalizer
Diffstat (limited to 'gc')
-rw-r--r--gc/default.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/gc/default.c b/gc/default.c
index 597044b5f6..59890d03be 100644
--- a/gc/default.c
+++ b/gc/default.c
@@ -2970,6 +2970,8 @@ rb_gc_impl_define_finalizer(void *objspace_ptr, VALUE obj, VALUE block)
VALUE table;
st_data_t data;
+ GC_ASSERT(!OBJ_FROZEN(obj));
+
RBASIC(obj)->flags |= FL_FINALIZE;
if (st_lookup(finalizer_table, obj, &data)) {