From 6e3bc6710324aeb75299c9edce305b6f7c22321c Mon Sep 17 00:00:00 2001 From: Peter Zhu Date: Sat, 17 Dec 2022 09:18:54 -0500 Subject: [PATCH] Hard crash when allocating in GC when RUBY_DEBUG Not all builds have RGENGC_CHECK_MODE set, so it should also crash when RUBY_DEBUG is set. --- gc.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gc.c b/gc.c index c9d336eed3..3f6a1bde51 100644 --- a/gc.c +++ b/gc.c @@ -12280,7 +12280,7 @@ objspace_xmalloc0(rb_objspace_t *objspace, size_t size) { if (UNLIKELY(malloc_during_gc_p(objspace))) { rb_warn("malloc during GC detected, this could cause crashes if it triggers another GC"); -#if RGENGC_CHECK_MODE +#if RGENGC_CHECK_MODE || RUBY_DEBUG rb_bug("Cannot malloc during GC"); #endif } @@ -12304,7 +12304,7 @@ objspace_xrealloc(rb_objspace_t *objspace, void *ptr, size_t new_size, size_t ol { if (UNLIKELY(malloc_during_gc_p(objspace))) { rb_warn("realloc during GC detected, this could cause crashes if it triggers another GC"); -#if RGENGC_CHECK_MODE +#if RGENGC_CHECK_MODE || RUBY_DEBUG rb_bug("Cannot realloc during GC"); #endif } @@ -12548,7 +12548,7 @@ objspace_xcalloc(rb_objspace_t *objspace, size_t size) { if (UNLIKELY(malloc_during_gc_p(objspace))) { rb_warn("calloc during GC detected, this could cause crashes if it triggers another GC"); -#if RGENGC_CHECK_MODE +#if RGENGC_CHECK_MODE || RUBY_DEBUG rb_bug("Cannot calloc during GC"); #endif }