diff options
author | 2001-03-02 10:18:49 +0000 | |
---|---|---|
committer | 2001-03-02 10:18:49 +0000 | |
commit | 254d48791c954ad6c4584228e684d9e5da334ab9 (patch) | |
tree | ee2c36e59139e31bb63e316a03362e400ee3e997 | |
parent | mount_mfs is not used, no link needed; nate (diff) | |
download | wireguard-openbsd-254d48791c954ad6c4584228e684d9e5da334ab9.tar.xz wireguard-openbsd-254d48791c954ad6c4584228e684d9e5da334ab9.zip |
signal handler repairs; phil@cs.wwu.edu
-rw-r--r-- | gnu/usr.bin/bc/bc/execute.c | 9 | ||||
-rw-r--r-- | gnu/usr.bin/bc/bc/main.c | 2 |
2 files changed, 5 insertions, 6 deletions
diff --git a/gnu/usr.bin/bc/bc/execute.c b/gnu/usr.bin/bc/bc/execute.c index c8f3df26135..0ef9bb98795 100644 --- a/gnu/usr.bin/bc/bc/execute.c +++ b/gnu/usr.bin/bc/bc/execute.c @@ -41,8 +41,6 @@ stop_execution (sig) int sig; { had_sigint = TRUE; - printf ("\n"); - rt_error ("interrupted execution"); } @@ -87,10 +85,11 @@ execute () if (interactive) { signal (SIGINT, stop_execution); - had_sigint = FALSE; } - while (pc.pc_addr < functions[pc.pc_func].f_code_size && !runtime_error) + had_sigint = FALSE; + while (pc.pc_addr < functions[pc.pc_func].f_code_size + && !runtime_error && !had_sigint) { inst = byte(&pc); @@ -543,7 +542,7 @@ execute () { signal (SIGINT, use_quit); if (had_sigint) - printf ("Interruption completed.\n"); + printf ("\ninterrupted execution.\n"); } } diff --git a/gnu/usr.bin/bc/bc/main.c b/gnu/usr.bin/bc/bc/main.c index 29a334fb0fb..87a9feb3af2 100644 --- a/gnu/usr.bin/bc/bc/main.c +++ b/gnu/usr.bin/bc/bc/main.c @@ -325,6 +325,6 @@ void use_quit (sig) int sig; { - printf ("\n(interrupt) use quit to exit.\n"); + write (1, "\n(interrupt) use quit to exit.\n", 31); signal (SIGINT, use_quit); } |