On Tue, Mar 28, 2017 at 10:17:54AM -0400, Chet Ramey wrote: > On 3/27/17 9:44 AM, Dr. Werner Fink wrote: > > Hi, > > > > I'd like to ask if there is crucial reason, beside the correct foreground > > process group, not to allow the lastpipe shell option for an interactive > > bash? Maybe something like in the attachment could be an option? > > Yes, there is. Once you decide you're going to allow lastpipe when job > control is enabled, you commit to handling ^Z and allowing the user to > suspend that pipeline. You have to do something with the foreground > shell at that point. An interactive shell is already ignoring SIGTSTP, > so you'll have to undo that, set a handler, figure out where you are, > and decide what to do. > > Some other shells attempt to solve the problem by forking (from the > TSTP handler??) cleaning up all the state, juggling the jobs table and > process status, and letting the forked shell continue with the pipeline, > but that's really fragile and I've never been tempted to implement it.
AFAICR this is what ksh93 does in sh_exit() ... zsh seems to write out something like `zsh: job can't be suspended' for builtins Werner -- "Having a smoking section in a restaurant is like having a peeing section in a swimming pool." -- Edward Burr
signature.asc
Description: PGP signature