Skip to content

Commit 814eaf3

Browse files
committed
Use rb_gc_mark_and_move for autoload_data
1 parent 0019e7c commit 814eaf3

File tree

1 file changed

+4
-13
lines changed

1 file changed

+4
-13
lines changed

variable.c

Lines changed: 4 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -2734,21 +2734,12 @@ struct autoload_data {
27342734
};
27352735

27362736
static void
2737-
autoload_data_compact(void *ptr)
2737+
autoload_data_mark_and_move(void *ptr)
27382738
{
27392739
struct autoload_data *p = ptr;
27402740

2741-
p->feature = rb_gc_location(p->feature);
2742-
p->mutex = rb_gc_location(p->mutex);
2743-
}
2744-
2745-
static void
2746-
autoload_data_mark(void *ptr)
2747-
{
2748-
struct autoload_data *p = ptr;
2749-
2750-
rb_gc_mark_movable(p->feature);
2751-
rb_gc_mark_movable(p->mutex);
2741+
rb_gc_mark_and_move(&p->feature);
2742+
rb_gc_mark_and_move(&p->mutex);
27522743
}
27532744

27542745
static void
@@ -2772,7 +2763,7 @@ autoload_data_memsize(const void *ptr)
27722763

27732764
static const rb_data_type_t autoload_data_type = {
27742765
"autoload_data",
2775-
{autoload_data_mark, autoload_data_free, autoload_data_memsize, autoload_data_compact},
2766+
{autoload_data_mark_and_move, autoload_data_free, autoload_data_memsize, autoload_data_mark_and_move},
27762767
0, 0, RUBY_TYPED_FREE_IMMEDIATELY | RUBY_TYPED_WB_PROTECTED
27772768
};
27782769

0 commit comments

Comments
 (0)