[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#33839: 26.1.90; Emacs occasionally fails to receive asynchronous sub
From: |
Philipp |
Subject: |
bug#33839: 26.1.90; Emacs occasionally fails to receive asynchronous subprocess output in batch mode |
Date: |
Sun, 23 Dec 2018 03:28:53 +0100 |
Add the following code to /tmp/form.el:
(require 'cl-lib)
(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. For example:
$ for i in {1..100}; do emacs -Q -batch -l /tmp/form.el ; done
Assertion failed: (equal (buffer-string) "stdout
stderr
"), ""
Assertion failed: (equal (buffer-string) "stdout
stderr
"), ""
i.e. here the output didn't arrive in 2 of 100 iterations.
In GNU Emacs 26.1.90 (build 5, x86_64-apple-darwin18.0.0, NS appkit-1671.10
Version 10.14.1 (Build 18B75))
of 2018-12-22
Repository revision: 24ddea074a2e61f7accde60cdf941ba67b1ce82a
Windowing system distributor 'Apple', version 10.3.1671
Recent messages:
For information about GNU Emacs and the GNU system, type C-h C-a.
Configured using:
'configure --enable-checking --enable-check-lisp-object-type
--enable-gtk-deprecation-warnings --with-modules --without-xml2
--without-pop --with-mailutils --enable-gcc-warnings=warn-only
MAKEINFO=/usr/local/opt/texinfo/bin/makeinfo 'CFLAGS=-O0 -ggdb3'
LDFLAGS=-O0'
Configured features:
JPEG NOTIFY ACL GNUTLS ZLIB TOOLKIT_SCROLL_BARS NS MODULES THREADS LCMS2
Important settings:
value of $LANG: de_DE.UTF-8
locale-coding-system: utf-8-unix
Major mode: Lisp Interaction
Minor modes in effect:
tooltip-mode: t
global-eldoc-mode: t
eldoc-mode: t
electric-indent-mode: t
mouse-wheel-mode: t
tool-bar-mode: t
menu-bar-mode: t
file-name-shadow-mode: t
global-font-lock-mode: t
font-lock-mode: t
blink-cursor-mode: t
auto-composition-mode: t
auto-encryption-mode: t
auto-compression-mode: t
line-number-mode: t
transient-mark-mode: t
Load-path shadows:
None found.
Features:
(shadow sort mail-extr emacsbug message rmc puny seq dired
dired-loaddefs format-spec rfc822 mml easymenu mml-sec epa derived epg
epg-config gnus-util rmail rmail-loaddefs mm-decode mm-bodies mm-encode
mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047
rfc2045 ietf-drums mm-util mail-prsvr mail-utils phst pcase ffap
thingatpt url-parse auth-source cl-seq eieio byte-opt bytecomp
byte-compile cconv eieio-core cl-macs gv eieio-loaddefs password-cache
url-vars subr-x rx gnutls dbus xml cl-loaddefs cl-lib elec-pair
time-date tooltip eldoc electric uniquify ediff-hook vc-hooks
lisp-float-type mwheel term/ns-win ns-win ucs-normalize mule-util
term/common-win tool-bar dnd fontset image regexp-opt fringe
tabulated-list replace newcomment text-mode elisp-mode lisp-mode
prog-mode register page menu-bar rfn-eshadow isearch timer select
scroll-bar mouse jit-lock font-lock syntax facemenu font-core
term/tty-colors frame cl-generic cham georgian utf-8-lang misc-lang
vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms cp51932
hebrew greek romanian slovak czech european ethiopic indian cyrillic
chinese composite charscript charprop case-table epa-hook jka-cmpr-hook
help simple abbrev obarray minibuffer cl-preloaded nadvice loaddefs
button faces cus-face macroexp files text-properties overlay sha1 md5
base64 format env code-pages mule custom widget hashtable-print-readable
backquote threads kqueue cocoa ns lcms2 multi-tty make-network-process
emacs)
Memory information:
((conses 16 216710 8580)
(symbols 48 21650 0)
(miscs 40 59 186)
(strings 32 32914 1496)
(string-bytes 1 892039)
(vectors 16 37089)
(vector-slots 8 751562 17790)
(floats 8 56 60)
(intervals 56 210 0)
(buffers 992 11))
- bug#33839: 26.1.90; Emacs occasionally fails to receive asynchronous subprocess output in batch mode,
Philipp <=
bug#33839: 26.1.90; Emacs occasionally fails to receive asynchronous subprocess output in batch mode, Paul Eggert, 2018/12/27