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

Re: killing suspended jobs makes zsh hang after 47d1215



On Jun 13,  4:02am, Pan Tsu wrote:
}
}   % cat | cat &
}   [1] 91580 97756
}   [1]  + suspended (tty input)  cat | cat
}   % %
}   [1]  + continued  cat | cat
}   ^C
}   load: 0.06 no foreground process group
} 
}   (gdb) p pn->status
}   $1 = 19
}   (gdb) p WIFSIGNALED(pn->status)

So I begin to suspect that what we really want here is

Index: Src/jobs.c
--- Src/jobs.c.~1.83.~	2011-06-12 08:05:58.000000000 -0700
+++ Src/jobs.c	2011-06-12 18:51:37.000000000 -0700
@@ -190,7 +190,7 @@
 	     * to return in a different job.
 	     */
 	    if (pn->pid == pid && (pn->status == SP_RUNNING ||
-				   WIFSTOPPED(pn->status))) {
+				   !WIFEXITED(pn->status))) {
 		*pptr = pn;
 		*jptr = jobtab + i;
 		return 1;



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