Subject: 28.2; M-x pr-interface raises error
From: Keith Waclena <[email-masked]>
To: [email-masked]
Date: Mon, 10 Apr 2023 12:53:05 -0500
List-Id: <debbugs-submit.debbugs.gnu.org>

M-x pr-interface raises an error on multiple machines (all running the
same Emacs version).  To reproduce:

1. emacs -Q
2. M-x load-library RET printing RET
3. M-x pr-interface RET

An error is raised:

widget-default-create: Wrong type argument: listp, "*scratch*"

The *Printing Interface* buffer looks like this (complete contents):

--8<---------------cut here---------------start------------->8---
                                             printing v6.9.3    ps-print v7.3.5
Current Directory : /home/keith/
Print :
  (*) Buffer :
--8<---------------cut here---------------end--------------->8---

The same error occurs if I select:

File / Print / Printing Interface

from the menu bar.

In GNU Emacs 28.2 (build 1, x86_64-pc-linux-gnu, X toolkit, cairo version 1.17.6, Xaw3d scroll bars)
 of 2023-01-25 built on jfcl
Repository revision: cc64221a9f79878e976771a590c0eefc68f47cd5
Repository branch: packages/packages/emacs
Windowing system distributor 'The X.Org Foundation', version 11.0.12101008
System Description: Arch Linux

Configured using:
 'configure --with-x-toolkit=lucid --with-native-compilation
 --sysconfdir=/etc --prefix=/usr --libexecdir=/usr/lib
 --localstatedir=/var --with-cairo --with-harfbuzz --with-libsystemd
 --with-modules 'CFLAGS=-march=x86-64 -mtune=generic -O2 -pipe -fno-plt
 -fexceptions -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security
 -fstack-clash-protection -fcf-protection -g
 -ffile-prefix-map=/home/keith/asp/emacs/repos/extra-x86_64/src=/usr/src/debug/emacs'
 LDFLAGS=-Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now
 PKG_CONFIG_PATH=/usr/app/lib/opam/4.13.1/lib/pkgconfig:/usr/app/lib/opam/4.13.1/lib/pkgconfig:/usr/app/lib/opam/4.13.1/lib/pkgconfig:'

Configured features:
ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG
JSON LCMS2 LIBOTF LIBSYSTEMD LIBXML2 M17N_FLT MODULES NATIVE_COMP NOTIFY
INOTIFY PDUMPER PNG RSVG SECCOMP SOUND THREADS TIFF TOOLKIT_SCROLL_BARS
X11 XAW3D XDBE XIM XPM LUCID ZLIB

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

Major mode: Fundamental

Minor modes in effect:
  which-key-mode: t
  global-disable-mouse-mode: t
  global-page-break-lines-mode: t
  projectile-mode: t
  emms-playing-time-display-mode: t
  emms-playing-time-mode: t
  diredfl-global-mode: t
  marginalia-mode: t
  selectrum-prescient-mode: t
  prescient-persist-mode: t
  recentf-mode: t
  override-global-mode: t
  windmove-mode: t
  winner-mode: t
  midnight-mode: t
  save-place-mode: t
  desktop-save-mode: t
  global-so-long-mode: t
  display-time-mode: t
  emms-mode-line-mode: t
  shell-dirtrack-mode: t
  selectrum-mode: t
  global-eldoc-mode: t
  show-paren-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  temp-buffer-resize-mode: t
  size-indication-mode: t
  line-number-mode: t
  transient-mark-mode: t

Load-path shadows:
/usr/app/lib/opam/4.13.1/share/emacs/site-lisp/merlin hides /home/keith/.emacs.d/elpa/merlin-4.8snapshot500/merlin
/usr/app/lib/opam/4.13.1/share/emacs/site-lisp/merlin-imenu hides /home/keith/.emacs.d/elpa/merlin-4.8snapshot500/merlin-imenu
/usr/app/lib/opam/4.13.1/share/emacs/site-lisp/merlin-xref hides /home/keith/.emacs.d/elpa/merlin-4.8snapshot500/merlin-xref
/usr/app/lib/opam/4.13.1/share/emacs/site-lisp/merlin-cap hides /home/keith/.emacs.d/elpa/merlin-4.8snapshot500/merlin-cap
/home/keith/.emacs.d/elpa/use-package-2.4.5/bind-key hides /home/keith/.emacs.d/elpa/bind-key-2.4.1/bind-key

Features:
(shadow emacsbug htmlize url-dav descr-text rng-xsd xsd-regexp rng-cmpct
rng-nxml rng-valid nxml-mode nxml-outln nxml-rap ediff ediff-merg
ediff-mult ediff-wind ediff-diff ediff-help ediff-init ediff-util
haskell-mode haskell-cabal haskell-utils haskell-font-lock
haskell-indentation haskell-string haskell-sort-imports haskell-lexeme
haskell-align-imports haskell-complete-module haskell-ghc-support
dabbrev haskell-customize whitespace printing ps-print ps-print-loaddefs
ps-def lpr forth-mode log-view find-dired time-stamp python
gnuplot-context gnuplot info-look artist picture reporter mw-thesaurus
request ert-x ert debug backtrace compat-macs mouseme ess-toolbar
ess-jags-d essd-els ess-sas-d ess-sp6-d ess-sas-l ess-sas-a ess-bugs-d
ess-r-mode ess-r-flymake ess-r-xref ess-trns ess-r-package
ess-r-completion ess-roxy ess-r-syntax ess-rd hideshow ess-s-lang
ess-help ess-mode ess-inf ess-tracebug ess ess-bugs-l ess-utils
ess-custom tar-mode autoload autorevert filenotify arc-mode archive-mode
ffap org-attach org-id dune skeleton slp thai-util thai-word
bbdb-message bbdb-gnus bbdb-mua bbdb-com bbdb bbdb-site timezone
mhtml-mode css-mode color js cc-mode cc-fonts cc-guess cc-menus cc-cmds
cc-styles cc-align cc-engine cc-vars cc-defs ox-org nnmaildir imenu man
acme pkg-info epl acme-tag two-column quick shortdoc vc-git hi-lock
gnus-gravatar gravatar dns refer-mode compface nnrss smerge-mode diff
gnus-uu yenc gnus-fun finder-inf eudc-vars cus-start sh-script
executable wgrep latexenc pcmpl-gnu org-archive utop utop-minor-mode
ielm cl-print help-fns radix-tree tex-mode org-goto sgml-mode facemenu
pacman make-mode log-edit pcvs-util add-log hippie-exp rect url-http
url-gw url-auth url-cache gnus-kill sendmail pcmpl-unix footnote qp
dired-aux gnus-dired cal-move cal-iso face-remap tabify elfeed-link
misearch multi-isearch gnus-picon gnus-cite smiley flow-fill mm-archive
mail-extr gnus-bcklg gnus-eform gnus-async gnus-dup gnus-ml nndoc nnml
nnfolder gnus-topic epa-file gnutls network-stream nsm gnus-icalendar
org-capture icalendar gnus-delay gnus-draft gnus-agent gnus-srvr
gnus-score score-mode nnvirtual nntp gnus-cache gnus-msg nndraft nnmh
mailpeek kw-utils buffer-stack tramp-cache tramp-sh tramp tramp-loaddefs
trampver tramp-integration tramp-compat ls-lisp bash-completion
fish-completion em-cmpl em-dirs esh-var esh-mode esh-cmd esh-ext esh-opt
esh-proc esh-io esh-arg esh-module esh-groups esh-util vc-dir ewoc
hl-line elfeed-show elfeed-search elfeed-csv elfeed elfeed-curl
elfeed-log elfeed-db elfeed-lib xml-query bookmark merlin-eldoc
merlin-xref merlin-cap merlin cl ocp-index yafolding goto-addr tuareg
tuareg-compat tuareg-opam flymake-proc flymake smie caml-types caml-help
find-file which-key disable-mouse disp-table vc-filewise vc-rcs etags
fileloop xref docket vc comp comp-cstr windsize page-break-lines
warnings skeletor let-alist f s dash ob-dot eldoni ox-odt rng-loc
rng-uri rng-parse rng-match rng-dt rng-util rng-pttrn nxml-parse nxml-ns
nxml-enc xmltok nxml-util ox-latex ox-icalendar ox-html table ox-ascii
ox-publish ox cus-edit pp projectile project lisp-mnt ibuf-ext ibuffer
ibuffer-loaddefs org-duration org-indent flyspell ispell org-element
avl-tree generator ol-eww ol-rmail ol-mhe ol-irc ol-info ol-gnus
nnselect gnus-search eieio-opt speedbar ezimage dframe gnus-art mm-uu
mml2015 mm-view mml-smime smime dig gnus-sum gnus-group gnus-undo
gnus-start gnus-dbus gnus-cloud nnimap nnmail mail-source utf7 netrc
nnoo parse-time gnus-spec gnus-int gnus-range message rmc rfc822 mml
mml-sec epa derived epg rfc6068 epg-config mm-decode mm-bodies mm-encode
mail-parse rfc2231 mailabbrev gmm-utils mailheader gnus-win ol-docview
doc-view jka-compr image-mode exif ol-bibtex ol-bbdb ol-w3m ol-doi
org-link-doi org-agenda org-refile ob-R ob-gnuplot ob-ocaml ob-ditaa
ob-org ob-shell org-tempo tempo org ob ob-tangle ob-ref ob-lob ob-table
ob-exp org-macro org-footnote org-src ob-comint org-pcomplete org-list
org-faces org-entities noutline outline org-version ob-emacs-lisp
ob-core ob-eval org-table oc-basic bibtex iso8601 org-keys oc
org-loaddefs find-func ol org-compat advice org-macs emms-mpris
emms-librefm-stream emms-librefm-scrobbler emms-playlist-limit emms-i18n
emms-history emms-score emms-stream-info emms-metaplaylist-mode
emms-bookmarks emms-cue emms-mode-line-icon emms-browser sort
emms-volume emms-volume-sndioctl emms-volume-mixerctl emms-volume-pulse
emms-volume-amixer emms-playlist-sort emms-last-played emms-player-xine
emms-lyrics emms-streams emms-show-all emms-tag-editor format-spec
emms-tag-tracktag emms-mark emms-info-native bindat emms-info-exiftool
emms-info-tinytag emms-info-metaflac emms-info-opusinfo
emms-info-ogginfo emms-info-mp3info emms-playlist-mode emms-player-vlc
emms-player-mpv emms-playing-time emms-player-mplayer emms-player-mpd
emms-url emms-cache emms-info emms-later-do tq emms-source-playlist
emms-source-file locate emms-player-simple emms-setup diredfl dired-x
dired dired-loaddefs marginalia compat compat-29 selectrum-prescient
selectrum minibuf-eldef crm prescient char-fold files-x recentf
tree-widget use-package-bind-key bind-key hydra lv cl-extra help-mode
use-package-core windmove winner midnight saveplace desktop frameset
server so-long notifications view mule-util cal-china lunar solar
cal-dst cal-hebrew holidays hol-loaddefs vc-dispatcher vc-hg diff-mode
appt diary-lib diary-loaddefs cal-menu calendar cal-loaddefs battery
dbus time emms-mode-line emms emms-compat cus-load autoinsert
dupes-mode-autoloads note grep compile pcase shell pcomplete comint
ansi-color ring eww xdg url-queue thingatpt shr kinsoku svg xml dom puny
mm-url gnus nnheader gnus-util rmail rmail-loaddefs rfc2047 rfc2045
ietf-drums text-property-search time-date mail-utils wid-edit mm-util
mail-prsvr easy-mmode rx info windsize-autoloads edmacro kmacro package
browse-url url url-proxy url-privacy url-expand url-methods url-history
url-cookie url-domsuf url-util mailcap url-handlers url-parse
auth-source cl-seq eieio eieio-core cl-macs eieio-loaddefs
password-cache json subr-x map url-vars seq byte-opt gv bytecomp
byte-compile cconv cl-loaddefs cl-lib iso-transl tooltip eldoc paren
electric uniquify ediff-hook vc-hooks lisp-float-type elisp-mode mwheel
term/x-win x-win term/common-win x-dnd tool-bar dnd fontset image
regexp-opt fringe tabulated-list replace newcomment text-mode lisp-mode
prog-mode register page tab-bar menu-bar rfn-eshadow isearch easymenu
timer select scroll-bar mouse jit-lock font-lock syntax font-core
term/tty-colors frame minibuffer 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 emoji-zwj charscript charprop case-table
epa-hook jka-cmpr-hook help simple abbrev obarray cl-preloaded nadvice
button loaddefs faces cus-face macroexp files window text-properties
overlay sha1 md5 base64 format env code-pages mule custom widget
hashtable-print-readable backquote threads dbusbind inotify lcms2
dynamic-setting system-font-setting font-render-setting cairo x-toolkit
x multi-tty make-network-process native-compile emacs)

Memory information:
((conses 16 6697356 577424)
 (symbols 48 80274 32)
 (strings 32 1973220 99874)
 (string-bytes 1 124167166)
 (vectors 16 438157)
 (vector-slots 8 6904763 408961)
 (floats 8 92985 8792)
 (intervals 56 576920 47095)
 (buffers 992 236))