Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Re: interrupt handling bug (again?)



On Fri, 30 Jun 2017 22:16:10 +0100
Peter Stephenson <p.w.stephenson@xxxxxxxxxxxx> wrote:
> I think when the SUPERJOB is put into the background it should no longer
> have STAT_CURSH status.  Does that sound reasonable?  I'm not sure why
> it would have it anyway, should it perhaps be removed when we mark it as
> STAT_SUPERJOB, which is kind of decurrentshellising it in any case?

Done this way, tied to something else we don't want when something's
backgrouned, it's probably good enough for now.

pws

diff --git a/Src/jobs.c b/Src/jobs.c
index d1b98ac..32f7daa 100644
--- a/Src/jobs.c
+++ b/Src/jobs.c
@@ -2288,8 +2288,10 @@ bin_fg(char *name, char **argv, Options ops, int func)
 	case BIN_FG:
 	case BIN_BG:
 	case BIN_WAIT:
-	    if (func == BIN_BG)
+	    if (func == BIN_BG) {
 		jobtab[job].stat |= STAT_NOSTTY;
+		jobtab[job].stat &= ~STAT_CURSH;
+	    }
 	    if ((stopped = (jobtab[job].stat & STAT_STOPPED))) {
 		makerunning(jobtab + job);
 		if (func == BIN_BG) {



Messages sorted by: Reverse Date, Date, Thread, Author