diff --git a/Modules/signalmodule.c b/Modules/signalmodule.c
index a2ed72a..c36a9cf 100644
--- a/Modules/signalmodule.c
+++ b/Modules/signalmodule.c
@@ -30,6 +30,7 @@
 #include "intrcheck.h"
 
 #include <signal.h>
+#include <errno.h>
 
 struct signalhandler_list {
 	int	tripped;
@@ -37,6 +38,7 @@
 };
 
 static struct signalhandler_list sig_list[NSIG];
+static int tripped = 0;		/* Speed up sigcheck() when none tripped */
 
 static object *default_sig_object;
 static object *default_ignore_object;
@@ -55,6 +57,7 @@
 signal_handler(sig_num)
      int sig_num;
 {
+	tripped++;
 	sig_list[sig_num].tripped = 1;
 	(void *)signal(sig_num, &signal_handler);
 }
@@ -148,7 +151,7 @@
 
 	sig_list[0].tripped = 0;
 	for (i = 1; i < NSIG; i++) {
-		void *t; /* type cop-out */
+		RETSIGTYPE (*t)();
 		t = signal(i, SIG_IGN);
 		signal(i, t);
 		sig_list[i].tripped = 0;
@@ -313,7 +316,10 @@
 sigcheck()
 {
 	int i;
-	object *f = getframe();
+	object *f;
+	if (!tripped)
+		return 0;
+	f = getframe();
 	if (f == NULL)
 		f = None;
 	for (i = 1; i < NSIG; i++) {
@@ -334,6 +340,7 @@
 			}
 		}
 	}
+	tripped = 0;
 	return 0;
 }
 
@@ -348,8 +355,9 @@
 int
 intrcheck()
 {
-	if (!sigcheck())
-		return 0;
-	err_clear();
-	return 1;
+	if (sig_list[SIGINT].tripped) {
+		sig_list[SIGINT].tripped = 0;
+		return 1;
+	}
+	return 0;
 }
