gitlab-build-images/patches/ruby/2.7.5/object-tracing-segfault.patch
Stan Hu 012bc5654a
Add Ruby patch to test GC issues with object tracing enabled
It's possible we just need a `RB_GC_GUARD` to prevent `obj` from being
prematurely freed by the garbage collector. This is test out
https://github.com/ruby/ruby/pull/5470/files.

Part of https://gitlab.com/gitlab-org/gitlab/-/issues/350296
2022-01-19 11:37:36 -08:00

12 lines
426 B
Diff

diff --git a/ext/objspace/object_tracing.c b/ext/objspace/object_tracing.c
index a057ac2a96..a122247e3b 100644
--- a/ext/objspace/object_tracing.c
+++ b/ext/objspace/object_tracing.c
@@ -110,6 +110,7 @@ newobj_i(VALUE tpval, void *data)
info->class_path = class_path_cstr;
info->generation = rb_gc_count();
st_insert(arg->object_table, (st_data_t)obj, (st_data_t)info);
+ RB_GC_GUARD(obj);
}
static void