From e385312e0937aecd40ca9eac43d88ad4ec0542e7 Mon Sep 17 00:00:00 2001
From: Peter Stephenson
Date: Sun, 7 Dec 2014 17:23:27 +0000
Subject: Put back commenting out of obscure error clearing.
It's done us no harm for a long time now, let sleeping dogs lie.
---
Src/jobs.c | 14 +++++++++++++-
1 file changed, 13 insertions(+), 1 deletion(-)
diff --git a/Src/jobs.c b/Src/jobs.c
index 6e47e5e54..3c2a21a72 100644
--- a/Src/jobs.c
+++ b/Src/jobs.c
@@ -1444,7 +1444,19 @@ zwaitjob(int job, int wait_cmd)
restore_queue_signals(q);
return 128 + last_signal;
}
- errflag &= ~ERRFLAG_ERROR;
+ /* Commenting this out makes ^C-ing a job started by a function
+ stop the whole function again. But I guess it will stop
+ something else from working properly, we have to find out
+ what this might be. --oberon
+
+ When attempting to separate errors and interrupts, we
+ assumed because of the previous comment it would be OK
+ to remove ERRFLAG_ERROR and leave ERRFLAG_INT set, since
+ that's the one related to ^C. But that doesn't work.
+ There's something more here we don't understand. --pws
+
+ errflag = 0; */
+
if (subsh) {
killjb(jn, SIGCONT);
jn->stat &= ~STAT_STOPPED;
--
cgit 1.4.1