Subject: bug#50166: 28.0.50; ECM for possible process-status/sentinel bug

From: Lars Ingebrigtsen <[email-masked]>
Date: Mon, 23 Aug 2021 03:47:36 +0200

Adam Porter <[email-masked]> writes:

> I guess it would be a good thing if this turned out to be just a
> documentation issue.

The manual has more here than the doc string:

          If STDERR is a buffer, Emacs will create a pipe process, the
          “standard error process”.  This process will have the default
          filter (*note Filter Functions::), sentinel (*note
          Sentinels::), and coding systems (*note Default Coding
          Systems::).  On the other hand, it will use QUERY-FLAG as its
          query-on-exit flag (*note Query Before Exit::).  It will be
          associated with the STDERR buffer (*note Process Buffers::)
          and send its output (which is the standard error of the main
          process) there.  To get the process object for the standard
          error process, pass the STDERR buffer to ‘get-buffer-process’.

I'll put some of this in the doc string, too.

> But if it is, I'm left to wonder what the right
> way is to capture the STDERR of a (make-process) process while also
> waiting on all of the process's associated processes to exit, have
> their output collected into the designated buffers, and their
> sentinels run.

Create a separate buffer for stderr, pick out the process with
get-buffer-process, and set a sentinel for that process, too.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no