about summary refs log tree commit homepage
path: root/ext/mwrap/mwrap.c
diff options
context:
space:
mode:
Diffstat (limited to 'ext/mwrap/mwrap.c')
-rw-r--r--ext/mwrap/mwrap.c11
1 files changed, 3 insertions, 8 deletions
diff --git a/ext/mwrap/mwrap.c b/ext/mwrap/mwrap.c
index 85b847b..9d90298 100644
--- a/ext/mwrap/mwrap.c
+++ b/ext/mwrap/mwrap.c
@@ -32,7 +32,6 @@
 
 static ID id_uminus;
 const char *rb_source_location_cstr(int *line); /* requires 2.6.0dev */
-extern int __attribute__((weak)) ruby_thread_has_gvl_p(void);
 
 #ifdef HAVE_RUBY_RACTOR_H /* Ruby 3.0+ */
 extern MWRAP_TSD void * __attribute__((weak)) ruby_current_ec;
@@ -45,6 +44,7 @@ extern size_t __attribute__((weak)) rb_gc_count(void);
 extern VALUE __attribute__((weak)) rb_cObject;
 extern VALUE __attribute__((weak)) rb_eTypeError;
 extern VALUE __attribute__((weak)) rb_yield(VALUE);
+int __attribute__((weak)) ruby_thread_has_gvl_p(void);
 
 static size_t total_bytes_inc, total_bytes_dec;
 
@@ -64,11 +64,6 @@ enum {
 
 #define IS_HEAP_PAGE_BODY ((struct src_loc *)-1)
 
-int __attribute__((weak)) ruby_thread_has_gvl_p(void)
-{
-        return 0;
-}
-
 #ifdef __FreeBSD__
 void *__malloc(size_t);
 void __free(void *);
@@ -238,8 +233,8 @@ static char *int2str(int num, char *dst, size_t * size)
  */
 static int has_ec_p(void)
 {
-        return (ruby_thread_has_gvl_p() && ruby_current_vm_ptr &&
-                ruby_current_ec);
+        return ruby_thread_has_gvl_p && ruby_thread_has_gvl_p() &&
+                ruby_current_vm_ptr && ruby_current_ec;
 }
 
 struct acc {