diff --git a/vm/src/stdlib/signal.rs b/vm/src/stdlib/signal.rs index 7d65ea7b8..9fce815c4 100644 --- a/vm/src/stdlib/signal.rs +++ b/vm/src/stdlib/signal.rs @@ -111,9 +111,10 @@ pub fn check_signals(vm: &VirtualMachine) -> PyResult<()> { None => return Ok(()), }; - if !ANY_TRIGGERED.swap(false, Ordering::Relaxed) { + if !ANY_TRIGGERED.load(Ordering::Relaxed) { return Ok(()); } + ANY_TRIGGERED.store(false, Ordering::Relaxed); trigger_signals(&signal_handlers.borrow(), vm) }