fix PR3965:SIGINT handler not restored after calling ParseAST(),
authorChris Lattner <sabre@nondot.org>
Sun, 12 Apr 2009 23:33:13 +0000 (23:33 +0000)
committerChris Lattner <sabre@nondot.org>
Sun, 12 Apr 2009 23:33:13 +0000 (23:33 +0000)
patch by Alexei Svitkine!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68929 91177308-0d34-0410-b5e6-96231b3b80d8

lib/System/Unix/Signals.inc

index be22bd83fc0267e4598721ce9f1e200e091fe0ac..e385e0c5566257b0eb7d09fa301250d9fff4046b 100644 (file)
@@ -126,7 +126,8 @@ static RETSIGTYPE SignalHandler(int Sig) {
       IF();        // run the interrupt function.
       return;
     }
-    exit(1);   // If this is an interrupt signal, exit the program
+    raise(Sig);   // Execute the default handler.
+    return;
   }
 
   // Otherwise if it is a fault (like SEGV) run any handler.