aboutsummaryrefslogtreecommitdiffstats
path: root/gc.c
diff options
context:
space:
mode:
authorPeter Zhu <peter@peterzhu.ca>2024-07-18 10:38:52 -0400
committerPeter Zhu <peter@peterzhu.ca>2024-07-19 08:53:32 -0400
commit0936e3d545c99dfec35ea32c8b0206cf54028f27 (patch)
tree5531f919b0fc3429b023aa29b6d3b7e4f539ad10 /gc.c
parentd9bff416377e6a3f7c936e3ba8102ffc3bf8f306 (diff)
downloadruby-0936e3d545c99dfec35ea32c8b0206cf54028f27.tar.gz
Make define_final call rb_define_finalizer
Diffstat (limited to 'gc.c')
-rw-r--r--gc.c6
1 files changed, 1 insertions, 5 deletions
diff --git a/gc.c b/gc.c
index bd094ef19c..9f24ade5c5 100644
--- a/gc.c
+++ b/gc.c
@@ -1544,19 +1544,15 @@ define_final(int argc, VALUE *argv, VALUE os)
VALUE obj, block;
rb_scan_args(argc, argv, "11", &obj, &block);
- should_be_finalizable(obj);
if (argc == 1) {
block = rb_block_proc();
}
- else {
- should_be_callable(block);
- }
if (rb_callable_receiver(block) == obj) {
rb_warn("finalizer references object to be finalized");
}
- return rb_gc_impl_define_finalizer(rb_gc_get_objspace(), obj, block);
+ return rb_define_finalizer(obj, block);
}
VALUE