Subject: bug#52554: 28.0.90; mm-inline-media-tests customization breaks .emacs reading

From: Robert Pluim <[email-masked]>
Date: Thu, 16 Dec 2021 16:18:13 +0100

mm-inline-media-tests contains lambda's, and itʼs byte-compiled, so
when you customize its value, byte-code is saved in your .emacs. One
of its components looks like this:

     ("text/x-vcard" mm-inline-text-vcard
      #[257 "\300\301!\206	%0\302\303!\207"
            [featurep vcard locate-library "vcard"]
            3 "

     (fn HANDLE)"])

That has an embedded 'NUL' just before the \302 (Iʼve encoded it),
which causes 'buffer-file-coding-system' to be incorrect
('no-conversion in this case) so any non-ascii character causes a read
error:

$ HOME=/tmp emacs --debug-init

Debugger entered--Lisp error: (invalid-read-syntax "?" 1 0)
  read(#<buffer  *load*>)
  eval-buffer(#<buffer  *load*> nil "/tmp/.emacs" nil t)  ; Reading at buffer position 573
  load-with-code-conversion("/tmp/.emacs" "/tmp/.emacs" t t)
  load("~/.emacs" noerror nomessage)

Sample .emacs attached. There are probably other defcustom's with the
same issue, I haven't checked.

In GNU Emacs 28.0.90 (build 3, x86_64-pc-linux-gnu, GTK+ Version 3.24.24, cairo version 1.16.0)
 of 2021-12-13 built on rltb
Repository revision: 9bd3f78645e14fdbaf3a569df5e0a52249c4f90e
Repository branch: emacs-28
System Description: Debian GNU/Linux 11 (bullseye)

Robert
--