diff --git a/src/sync/wait_condition.rs b/src/sync/wait_condition.rs index b6fb71b00e..bbb47fc3ed 100644 --- a/src/sync/wait_condition.rs +++ b/src/sync/wait_condition.rs @@ -48,6 +48,9 @@ impl WaitCondition { { let mut context = context_lock.write(); + if let Some((control, _, _)) = context.sigcontrol() && control.currently_pending_unblocked() != 0 { + return false; + } id = context.id; context.block(reason); }