Subject: bug#22096: closed (Re: bug#22096: 25.0.50; reading from fifo breaks display)

From: [email-masked] (GNU bug Tracking System)
Date: Mon, 31 Aug 2020 02:12:03 +0000

Your bug report

#22096: 25.0.50; reading from fifo breaks display

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
22096: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=22096
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#22096: 25.0.50; reading from fifo breaks display
From: Stefan Kangas <[email-masked]>
To: Mark Oteiza <[email-masked]>
Cc: Kenichi Handa <[email-masked]>, Eli Zaretskii <[email-masked]>, [email-masked]
Date: Mon, 31 Aug 2020 02:11:34 +0000
List-Id: <debbugs-submit.debbugs.gnu.org>

Mark Oteiza <[email-masked]> writes:

> On 05/12/15 at 09:38pm, Eli Zaretskii wrote:
>> > From: Mark Oteiza <[email-masked]>
>> > Date: Sat, 05 Dec 2015 13:29:14 -0500
>> >
>> > Simpler recipe:
>> >
>> > 1. mkfifo foo
>> > 2. echo "bar" > foo
>> >
>> > In emacs -Q:
>> >
>> > 3. Evaluate (insert-file-contents-literally "foo" t)
>> >
>> > The buffer display is now broken.
>>
>> Thanks.  My Emacs is configured with --enable-checking, so it aborted
>> due to assertion violation.  The patch below fixes that for me; please
>> see if it fixes the display problem for you.
>>
>> diff --git a/src/fileio.c b/src/fileio.c
>> index 6cda1e3..8e44eb0 100644
>> --- a/src/fileio.c
>> +++ b/src/fileio.c
>> @@ -4265,7 +4265,7 @@ by calling `format-decode', which see.  */)
>> 	  && NILP (replace))
>> 	/* Visiting a file with these coding system makes the buffer
>> 	   unibyte.  */
>> -	bset_enable_multibyte_characters (current_buffer, Qnil);
>> +	Fset_buffer_multibyte (Qnil);
>>      }
>>
>>    coding.dst_multibyte = ! NILP (BVAR (current_buffer, enable_multibyte_charac\
>> ters));
>>
>
> The patch does indeed fix the display problem. Thank you.

This was fixed, but the bug was never closed.

I'm therefore closing this bug report now.

Subject: 25.0.50; reading from fifo breaks display
From: Mark Oteiza <[email-masked]>
To: [email-masked]
Date: Fri, 04 Dec 2015 12:40:38 -0500
List-Id: <debbugs-submit.debbugs.gnu.org>

I suppose this is two issues, really. I am trying to read from a FIFO,
specifically one written to by mpd, configured in mpd.conf with

audio_output {
  type "fifo"
  name "FIFO"
  path "/tmp/mpd.fifo"
  format "44100:16:2"
}

With mpd running I can see that the FIFO is there and I can read from it
with other tools/mpd clients.

(info "(elisp) Reading from Files") suggests I should be able to read
from a FIFO. From emacs -Q, insert the following into the scratch buffer:

(insert-file-contents "/tmp/mpd.fifo" nil 0 10 nil)

First issue: evaluating this yields

(file-error "not a regular file" "/tmp/mpd.fifo")

Second issue: changing the VISIT argument to t and evaluating:

(insert-file-contents "/tmp/mpd.fifo" t 0 10 nil)

breaks the display engine. "nil)" becomes invisible, the last "r" in the
scratch buffer message becomes fontified as a matching paren, and
hitting C-a at the end of the form takes me to the aforementioned "r".
I have attached an image.

In GNU Emacs 25.0.50.1 (x86_64-unknown-linux-gnu, X toolkit, Xaw scroll bars)
 of 2015-12-03
Repository revision: eaa1fd6dbff8346eb38485de5ebf0fbfacf374d9
Configured using:
 'configure --prefix=/usr --sysconfdir=/etc --libexecdir=/usr/lib
 --localstatedir=/var --without-gconf --with-modules
 --with-x-toolkit=lucid 'CFLAGS=-march=x86-64 -mtune=generic -O0 -pipe
 -fstack-protector-strong --param=ssp-buffer-size=4 -g
 -fvar-tracking-assignments -g -fvar-tracking-assignments'
 LDFLAGS=-Wl,-O0,--sort-common,--as-needed,-z,relro'

Configured features:
XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GSETTINGS NOTIFY
ACL GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB TOOLKIT_SCROLL_BARS
LUCID X11 MODULES

Important settings:
  value of $LC_COLLATE: C
  value of $LANG: en_US.UTF-8
  locale-coding-system: utf-8-unix

Major mode: Lisp Interaction

Minor modes in effect:
  paredit-mode: t
  rainbow-delimiters-mode: t
  flycheck-mode: t
  company-mode: t
  display-time-mode: t
  save-place-mode: t
  show-paren-mode: t
  savehist-mode: t
  winner-mode: t
  tooltip-mode: t
  global-eldoc-mode: t
  mouse-wheel-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  size-indication-mode: t
  column-number-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent messages:
Loading /home/mvo/.local/share/emacs/custom.el (source)...done
For information about GNU Emacs and the GNU system, type C-h C-a.
delete-backward-char: Text is read-only

Load-path shadows:
/home/mvo/.emacs.d/elpa/company-0.8.12/.dir-locals hides /usr/share/emacs/25.0.50/lisp/gnus/.dir-locals
/home/mvo/.emacs.d/elpa/twitch-0.7/twitch hides /home/mvo/.emacs.d/site-lisp/twitch
/home/mvo/.emacs.d/elpa/kv-0.0.19/kv hides /home/mvo/.emacs.d/site-lisp/emacs-kv/kv
/home/mvo/.emacs.d/elpa/kv-0.0.19/kv-tests hides /home/mvo/.emacs.d/site-lisp/emacs-kv/kv-tests
/home/mvo/.emacs.d/elpa/esxml-0.3.1/esxml hides /home/mvo/.emacs.d/site-lisp/esxml/esxml

Features:
(shadow sort ruler-mode gnus-util mail-extr emacsbug message idna dired
format-spec rfc822 mml mml-sec mm-decode mm-bodies mm-encode mail-parse
rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045
ietf-drums mm-util help-fns mail-prsvr mail-utils term/xterm xterm
paredit easy-mmode rainbow-delimiters flycheck find-func rx subr-x seq
dash company-files company-oddmuse company-keywords company-etags etags
xref cl-seq project eieio byte-opt bytecomp byte-compile cl-extra
help-mode cconv eieio-core cl-macs company-gtags company-dabbrev-code
company-dabbrev company-capf company-cmake company-ropemacs
company-xcode company-clang company-semantic company-eclim
company-template company-css company-nxml company-bbdb company
finder-inf info package easymenu geiser-install geiser gv time windmove
edmacro kmacro cl-loaddefs pcase cl-lib saveplace time-date paren
savehist winner ring zenburn-theme mule-util tooltip eldoc electric
uniquify ediff-hook vc-hooks lisp-float-type mwheel x-win
term/common-win x-dnd tool-bar dnd fontset image regexp-opt fringe
tabulated-list newcomment elisp-mode lisp-mode prog-mode register page
menu-bar rfn-eshadow timer select scroll-bar mouse jit-lock font-lock
syntax facemenu font-core 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 charscript case-table epa-hook jka-cmpr-hook help
simple abbrev 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
dbusbind inotify dynamic-setting system-font-setting font-render-setting
x-toolkit x multi-tty make-network-process emacs)

Memory information:
((conses 16 161562 101461)
 (symbols 48 24795 25)
 (miscs 40 58 179)
 (strings 32 40408 74230)
 (string-bytes 1 1128413)
 (vectors 16 17014)
 (vector-slots 8 452009 54721)
 (floats 8 269 952)
 (intervals 56 451 59)
 (buffers 976 11)
 (heap 1024 33756 9289))