help-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Shell buffer processes all die when I run "man"


From: Eli Zaretskii
Subject: Re: Shell buffer processes all die when I run "man"
Date: Sat, 12 Nov 2016 09:11:58 +0200

> From: David Karr <address@hidden>
> Date: Fri, 11 Nov 2016 10:41:12 -0800
> 
> I'm using Emacs 24.5.1 in Cygwin on Windows 7.
> 
> I create multiple shell buffers (using a wrapper package that I
> wrote).  I've used this basically unchanged for more than 10 years.
> 
> I recently noticed that if I have one or more shell buffers, and I run
> the "man" function, I often see a short message saying "Waiting for
> process to die", and then I see that all of my shell buffers say
> "Process shell hangup" (or "shell<1>", depending on the buffer name).
> I've been seeing this consistently for several weeks now.

I cannot reproduce this in "emacs -Q", if I manually rename the shell
buffers to *shell*<1> etc., and then run "M-x man".

"Waiting for process to die" is usually a sign that some problem
happened during execution of a subprocess, so you should look into
what happens in the pipe run by "M-x man" on your system.  E.g., do
you see the same message when no shell buffers exist in your session?

When Emacs emits the above message, it kills the entire process group
of the subprocess with the SIGINT signal, so if your shell processes
are by some chance all in the same group as the shell run by "M-x
man", they will also be killed (but not by SIGHUP, as you seem to
say).  This shouldn't normally happen, though, and besides, the
message is only shown for processes started synchronously with
call-process, whereas on your system "M-x man" should run the pipe
asynchronously with start-process.

So I think some other factor is at work here, and the key to unlocking
this puzzle is somewhere in your customizations and/or that wrapper
package you wrote.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]