|
From: | Eli Zaretskii |
Subject: | bug#33839: 26.1.90; Emacs occasionally fails to receive asynchronous subprocess output in batch mode |
Date: | Sun, 23 Dec 2018 17:21:58 +0200 |
> From: Philipp <p.stephani2@gmail.com> > Date: Sun, 23 Dec 2018 03:28:53 +0100 > > (with-temp-buffer > (let ((proc (make-process :name "test" > :command '("bash" "-c" "echo stdout; echo stderr > >&2") > :buffer (current-buffer) > :connection-type 'pipe > :sentinel #'ignore > :noquery t > :coding '(utf-8-unix . utf-8-unix)))) > (when (process-live-p proc) > (process-send-eof proc)) > (while (process-live-p proc) > (accept-process-output proc)) > (cl-assert (equal (buffer-string) "stdout\nstderr\n") :show-args))) > > Then evaluate this form repeatedly. Occasionally the buffer is empty > and the assertion triggers. Isn't there an inherent race condition here?
[Prev in Thread] | Current Thread | [Next in Thread] |