diff --git a/src/main/scala/leon/Main.scala b/src/main/scala/leon/Main.scala
index 2e27856cb36b68d4e716559527e384c31d13fcc5..3a23a33e4557e9dbebba578bdfc689342c589abb 100644
--- a/src/main/scala/leon/Main.scala
+++ b/src/main/scala/leon/Main.scala
@@ -177,8 +177,6 @@ object Main {
 
     val intManager = new InterruptManager(reporter)
 
-    intManager.registerSignalHandler()
-
     LeonContext(settings = settings,
                 reporter = reporter,
                 files = files,
@@ -215,6 +213,8 @@ object Main {
 
       val ctx = processOptions(args.toList)
 
+      ctx.interruptManager.registerSignalHandler()
+
       ctx.timers.get("Leon Opts") += timer
 
       // Compute leon pipeline