summaryrefslogtreecommitdiff
path: root/load.c
diff options
context:
space:
mode:
Diffstat (limited to 'load.c')
-rw-r--r--load.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/load.c b/load.c
index bc0571124d..498c66a3fe 100644
--- a/load.c
+++ b/load.c
@@ -821,7 +821,7 @@ load_lock(rb_vm_t *vm, const char *ftptr, bool warn)
(*init)();
return (char *)"";
}
- if (warn) {
+ if (warn && rb_thread_shield_owned((VALUE)data)) {
VALUE warning = rb_warning_string("loading in progress, circular require considered harmful - %s", ftptr);
rb_backtrace_each(rb_str_append, warning);
rb_warning("%"PRIsVALUE, warning);