summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorderaadt <deraadt@openbsd.org>2001-03-02 10:18:49 +0000
committerderaadt <deraadt@openbsd.org>2001-03-02 10:18:49 +0000
commit254d48791c954ad6c4584228e684d9e5da334ab9 (patch)
treeee2c36e59139e31bb63e316a03362e400ee3e997
parentmount_mfs is not used, no link needed; nate (diff)
downloadwireguard-openbsd-254d48791c954ad6c4584228e684d9e5da334ab9.tar.xz
wireguard-openbsd-254d48791c954ad6c4584228e684d9e5da334ab9.zip
signal handler repairs; phil@cs.wwu.edu
-rw-r--r--gnu/usr.bin/bc/bc/execute.c9
-rw-r--r--gnu/usr.bin/bc/bc/main.c2
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);
}