diff --git a/src/main/scala/leon/utils/InterruptManager.scala b/src/main/scala/leon/utils/InterruptManager.scala
index 79a799fac8ee905b50b7628f0087256d46f026d3..04775cbc71bd0734d4a23df8ed4550abbfabe3ae 100644
--- a/src/main/scala/leon/utils/InterruptManager.scala
+++ b/src/main/scala/leon/utils/InterruptManager.scala
@@ -45,7 +45,10 @@ class InterruptManager(reporter: Reporter) {
     }
   }
 
-  def registerForInterrupts(i: Interruptible) {
+  def registerForInterrupts(i: Interruptible) = synchronized {
+    if (interrupted.get) {
+      i.interrupt()
+    }
     interruptibles.put(i, true)
   }