diff options
author | Guido van Rossum <guido@python.org> | 1993-07-05 10:31:29 (GMT) |
---|---|---|
committer | Guido van Rossum <guido@python.org> | 1993-07-05 10:31:29 (GMT) |
commit | f1dc56632881fe4e5beed047580bf927679f3669 (patch) | |
tree | f669dcac15ec9cb2801b881c3a7b1a579e7c994e /Parser/intrcheck.c | |
parent | 9e90a672b44e2acfd5c6dabfb9435bb4bb46c845 (diff) | |
download | cpython-f1dc56632881fe4e5beed047580bf927679f3669.zip cpython-f1dc56632881fe4e5beed047580bf927679f3669.tar.gz cpython-f1dc56632881fe4e5beed047580bf927679f3669.tar.bz2 |
* Makefile: added all: and default: targets.
* many files: made some functions static; removed "extern int errno;".
* frozenmain.c: fixed bugs introduced on 24 June...
* flmodule.c: remove 1.5 bw compat hacks, add new functions in 2.2a
(and some old functions that were omitted).
* timemodule.c: added MSDOS floatsleep version .
* pgenmain.c: changed exit() to goaway() and added defn of goaway().
* intrcheck.c: add hack (to UNIX only) so interrupting 3 times
will exit from a hanging program. The second interrupt prints
a message explaining this to the user.
Diffstat (limited to 'Parser/intrcheck.c')
-rw-r--r-- | Parser/intrcheck.c | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/Parser/intrcheck.c b/Parser/intrcheck.c index 4636b3f..f5891ee 100644 --- a/Parser/intrcheck.c +++ b/Parser/intrcheck.c @@ -131,7 +131,20 @@ static SIGTYPE intcatcher(sig) int sig; /* Not used by required by interface */ { - interrupted = 1; + extern void goaway PROTO((int)); + static char message[] = +"python: to interrupt a truly hanging Python program, interrupt once more.\n"; + switch (interrupted++) { + case 0: + break; + case 1: + write(2, message, strlen(message)); + break; + case 2: + interrupted = 0; + goaway(1); + break; + } signal(SIGINT, intcatcher); } |