GNU bug report logs -
#61703
29.0.60; Emacs crashes on C-x 8 RET
Previous Next
To reply to this bug, email your comments to 61703 AT debbugs.gnu.org.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#61703
; Package
emacs
.
(Wed, 22 Feb 2023 08:02:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Kai Ma <justksqsf <at> gmail.com>
:
New bug report received and forwarded. Copy sent to
bug-gnu-emacs <at> gnu.org
.
(Wed, 22 Feb 2023 08:02:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Emacs sometimes crashes on C-x 8 RET, ie. (insert-char).
Sorry, but I didn't find a way to reproduce this issue with emacs -Q.
This seems to be related to vertico-posframe-mode (which puts the
minibuffer in a separate child frame). I can confirm that if I disable
vertico-posframe-mode, this problem disappears.
Attached are the system-generated crash report and a backtrace obtained
from LLDB.
[crash_report.txt (text/plain, attachment)]
[backtrace.txt (text/plain, attachment)]
[Message part 4 (text/plain, inline)]
In GNU Emacs 29.0.60 (build 4, x86_64-apple-darwin22.3.0, NS
appkit-2299.40 Version 13.2.1 (Build 22D68)) of 2023-02-22 built on
Kais-MacBook.local
Repository revision: fb5dbf6de73fa034338448f1029c55f85d1078b4
Repository branch: HEAD
Windowing system distributor 'Apple', version 10.3.2299
System Description: macOS 13.2.1
Configured using:
'configure --with-ns --with-xwidgets'
Configured features:
ACL DBUS GIF GLIB GMP GNUTLS JPEG JSON LCMS2 LIBXML2 MODULES NOTIFY
KQUEUE NS PDUMPER PNG RSVG SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS
TREE_SITTER WEBP XIM XWIDGETS ZLIB
Important settings:
value of $LC_ALL: zh_CN.utf-8
value of $LANG: zh_CN.utf-8
locale-coding-system: utf-8-unix
Major mode: Lisp Interaction
Minor modes in effect:
global-wakatime-mode: t
wakatime-mode: t
display-line-numbers-mode: t
hl-todo-mode: t
rainbow-delimiters-mode: t
symbol-overlay-mode: t
diff-hl-margin-local-mode: t
diff-hl-margin-mode: t
diff-hl-mode: t
page-break-lines-mode: t
gcmh-mode: t
shell-dirtrack-mode: t
yas-global-mode: t
yas-minor-mode: t
doom-modeline-mode: t
winner-mode: t
winum-mode: t
which-key-mode: t
global-hl-line-mode: t
solaire-global-mode: t
solaire-mode: t
projectile-mode: t
vertico-mouse-mode: t
vertico-mode: t
marginalia-mode: t
corfu-popupinfo-mode: t
global-corfu-mode: t
corfu-mode: t
keyfreq-autosave-mode: t
keyfreq-mode: t
prescient-persist-mode: t
recentf-mode: t
global-ligature-mode: t
ligature-mode: t
ns-auto-titlebar-mode: t
pixel-scroll-precision-mode: t
server-mode: t
electric-pair-mode: t
global-so-long-mode: t
delete-selection-mode: t
global-auto-revert-mode: t
override-global-mode: t
tooltip-mode: t
global-eldoc-mode: t
eldoc-mode: t
show-paren-mode: t
electric-indent-mode: t
mouse-wheel-mode: t
tab-bar-history-mode: t
tab-bar-mode: t
menu-bar-mode: t
file-name-shadow-mode: t
context-menu-mode: t
global-font-lock-mode: t
font-lock-mode: t
column-number-mode: t
line-number-mode: t
transient-mark-mode: t
auto-composition-mode: t
auto-encryption-mode: t
auto-compression-mode: t
hs-minor-mode: t
Load-path shadows:
/Users/kaima/.emacs.d/elpa/transient-20230214.1525/transient hides /Users/kaima/src/emacs/lisp/transient
Features:
(shadow sort ecomplete mail-extr emacsbug message yank-media puny rfc822
mml mml-sec epa epg rfc6068 epg-config mailabbrev gmm-utils mailheader
sendmail vertico-directory wakatime-mode autoinsert hideshow
display-line-numbers hl-todo rainbow-delimiters symbol-overlay
diff-hl-margin diff-hl-dired advice diff-hl vc-hg vc-git log-view
pcvs-util vc-dir ewoc vc vc-dispatcher diff-mode disp-table
page-break-lines gcmh tramp-cache time-stamp tramp-sh tramp
tramp-loaddefs trampver tramp-integration cus-start tramp-compat shell
pcomplete parse-time iso8601 ls-lisp format-spec yasnippet doom-modeline
doom-modeline-segments let-alist doom-modeline-env doom-modeline-core
shrink-path f f-shortdoc s winner winum dash which-key hl-line
solaire-mode face-remap projectile project skeleton ibuf-macs find-dired
dired dired-loaddefs grep compile comint ansi-osc ansi-color ibuf-ext
ibuffer ibuffer-loaddefs vertico-posframe posframe vertico-mouse vertico
marginalia corfu-popupinfo kind-icon svg-lib color svg dom
corfu-prescient corfu catppuccin-theme desktop frameset keyfreq
prelude-irc prelude-apps alert log4e notifications dbus xml gntp
prelude-mail gnus nnheader gnus-util text-property-search time-date
mail-utils range prelude-os prelude-help prelude-lang-misc
dockerfile-mode sh-script smie treesit executable yaml-mode
prelude-lang-web prelude-lang-haskell prelude-lang-js prelude-lang-ml
prelude-lang-rust prelude-lang-python prelude-lang-cc prelude-lang-lisp
prelude-prog prelude-blog prelude-org prelude-tex prelude-git
prelude-dired prelude-chinese prelude-ibuffer prelude-search prelude-nix
prelude-completion orderless prescient char-fold prelude-project
prelude-ui dashboard derived dashboard-widgets recentf tree-widget
ligature all-the-icons all-the-icons-faces data-material
data-weathericons data-octicons data-fileicons data-faicons
data-alltheicons ns-auto-titlebar pixel-scroll cua-base ring
prelude-core dabbrev ffap thingatpt server finder-inf elec-pair diminish
exec-path-from-shell eshell esh-cmd generator esh-ext esh-opt esh-proc
esh-io esh-arg esh-module esh-groups esh-util cus-edit pp cus-load icons
wid-edit files-x undohist edmacro kmacro so-long delsel autorevert
filenotify prelude-common prelude-package quelpa-use-package quelpa
mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 mm-util
ietf-drums mail-prsvr lisp-mnt help-fns radix-tree use-package
use-package-ensure use-package-delight use-package-diminish
use-package-bind-key bind-key easy-mmode prelude-loaddefs no-littering
compat cl-extra help-mode use-package-core gcmh-autoloads
carbon-now-sh-autoloads company-autoloads benchmark-init-autoloads
kind-icon-autoloads pinyinlib-autoloads nix-mode-autoloads
org-roam-ui-autoloads symbol-overlay-autoloads cdlatex-autoloads
go-translate-autoloads ns-auto-titlebar-autoloads no-littering-autoloads
diff-hl-autoloads ccls-autoloads wgrep-autoloads
vertico-posframe-autoloads vertico-autoloads
treemacs-all-the-icons-autoloads merlin-autoloads
org-roam-bibtex-autoloads citre-autoloads rainbow-delimiters-autoloads
helpful-autoloads elisp-refs-autoloads quickrun-autoloads
yaml-mode-autoloads dired-filter-autoloads org-ref-autoloads
htmlize-autoloads dune-autoloads forge-autoloads magit-autoloads pcase
closql-autoloads lsp-ui-autoloads org-noter-autoloads debbugs-autoloads
vundo-autoloads auctex-autoloads tex-site geiser-guile-autoloads
page-break-lines-autoloads diredfl-autoloads smartparens-autoloads
citeproc-autoloads cider-autoloads nyan-mode-autoloads
marginalia-autoloads dashboard-autoloads alert-autoloads
codeium-autoloads helm-bibtex-autoloads bibtex-completion-autoloads
org-download-autoloads mini-frame-autoloads queue-autoloads
wakatime-mode-autoloads deft-autoloads git-commit-autoloads
ox-pandoc-autoloads ghub-autoloads all-the-icons-dired-autoloads
dash-at-point-autoloads elfeed-autoloads org-roam-autoloads
magit-section-autoloads emacsql-sqlite-autoloads emacsql-autoloads
js2-mode-autoloads solaire-mode-autoloads ripgrep-autoloads
dumb-jump-autoloads rainbow-mode-autoloads rustic-autoloads
xterm-color-autoloads rust-mode-autoloads simple-httpd-autoloads
corfu-prescient-autoloads corfu-autoloads gntp-autoloads
clojure-mode-autoloads cape-autoloads which-key-autoloads
geiser-racket-autoloads info-colors-autoloads utop-autoloads
tuareg-autoloads rx caml-autoloads parseedn-autoloads dap-mode-autoloads
lsp-docker-autoloads yaml-autoloads lsp-treemacs-autoloads
expand-region-autoloads modern-cpp-font-lock-autoloads ob-rust-autoloads
org-latex-impatient-autoloads undohist-autoloads with-editor-autoloads
doom-modeline-autoloads shrink-path-autoloads prescient-autoloads
string-inflection-autoloads sly-autoloads hl-todo-autoloads
keyfreq-autoloads speed-type-autoloads pdf-tools-autoloads
tablist-autoloads ormolu-autoloads reformatter-autoloads
diminish-autoloads dired-hacks-utils-autoloads embark-consult-autoloads
embark-autoloads org-appear-autoloads sesman-autoloads
nix-sandbox-autoloads flycheck-haskell-autoloads haskell-mode-autoloads
flycheck-autoloads pkg-info-autoloads epl-autoloads treepy-autoloads
bui-autoloads combobulate-autoloads quelpa-use-package-autoloads
quelpa-autoloads log4e-autoloads web-mode-autoloads parsebib-autoloads
treemacs-projectile-autoloads projectile-autoloads w3m-load
w3m-autoloads valign-autoloads websocket-autoloads biblio-autoloads
biblio-core-autoloads yasnippet-autoloads dockerfile-mode-autoloads
all-the-icons-ibuffer-autoloads all-the-icons-autoloads geiser-autoloads
parseclj-autoloads orderless-autoloads nov-autoloads esxml-autoloads
kv-autoloads consult-autoloads svg-lib-autoloads
treemacs-tab-bar-autoloads treemacs-autoloads cfrs-autoloads
posframe-autoloads hydra-autoloads pfuture-autoloads
ace-window-autoloads avy-autoloads lsp-mode-autoloads lv-autoloads
markdown-mode-autoloads spinner-autoloads f-autoloads s-autoloads
ligature-autoloads helm-autoloads helm-core-autoloads async-autoloads
catppuccin-theme-autoloads minimap-autoloads google-translate-autoloads
popup-autoloads winum-autoloads transient-autoloads compat-autoloads
multiple-cursors-autoloads exec-path-from-shell-autoloads
telega-autoloads rainbow-identifiers-autoloads
visual-fill-column-autoloads vterm-autoloads ht-autoloads info
dash-autoloads package browse-url url url-proxy url-privacy url-expand
url-methods url-history url-cookie generate-lisp-file url-domsuf
url-util mailcap url-handlers url-parse auth-source cl-seq eieio
eieio-core cl-macs password-cache json subr-x map byte-opt gv bytecomp
byte-compile url-vars cl-loaddefs cl-lib china-util rmc iso-transl
tooltip cconv eldoc paren electric uniquify ediff-hook vc-hooks
lisp-float-type elisp-mode 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 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 nadvice seq simple cl-generic indonesian philippine
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 abbrev obarray oclosure
cl-preloaded button loaddefs theme-loaddefs faces cus-face macroexp
files window text-properties overlay sha1 md5 base64 format env
code-pages mule custom widget keymap hashtable-print-readable backquote
threads xwidget-internal dbusbind kqueue cocoa ns lcms2 multi-tty
make-network-process emacs)
Memory information:
((conses 16 1025353 1011733)
(symbols 48 43324 773)
(strings 32 729343 70891)
(string-bytes 1 39173151)
(vectors 16 41243)
(vector-slots 8 1629068 808780)
(floats 8 733 1037)
(intervals 56 958 456)
(buffers 984 12))
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#61703
; Package
emacs
.
(Wed, 22 Feb 2023 12:41:01 GMT)
Full text and
rfc822 format available.
Message #8 received at 61703 <at> debbugs.gnu.org (full text, mbox):
> From: Kai Ma <justksqsf <at> gmail.com>
> Date: Wed, 22 Feb 2023 16:00:29 +0800
>
> Emacs sometimes crashes on C-x 8 RET, ie. (insert-char).
>
> Sorry, but I didn't find a way to reproduce this issue with emacs -Q.
>
> This seems to be related to vertico-posframe-mode (which puts the
> minibuffer in a separate child frame). I can confirm that if I disable
> vertico-posframe-mode, this problem disappears.
Please provide at least the information you can provide: what did you
type at the "C-x 8 RET" prompt, and when exactly it crashed during
this command. Also, how to setup vertico-posframe-mode like you do.
Basically, these problems are impossible to debug without a
reproducible recipe, so any details count.
Thanks in advance.
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#61703
; Package
emacs
.
(Wed, 22 Feb 2023 13:01:02 GMT)
Full text and
rfc822 format available.
Message #11 received at 61703 <at> debbugs.gnu.org (full text, mbox):
> On Feb 22, 2023, at 20:40, Eli Zaretskii <eliz <at> gnu.org> wrote:
>
>> From: Kai Ma <justksqsf <at> gmail.com>
>> Date: Wed, 22 Feb 2023 16:00:29 +0800
>>
>> Emacs sometimes crashes on C-x 8 RET, ie. (insert-char).
>>
>> Sorry, but I didn't find a way to reproduce this issue with emacs -Q.
>>
>> This seems to be related to vertico-posframe-mode (which puts the
>> minibuffer in a separate child frame). I can confirm that if I disable
>> vertico-posframe-mode, this problem disappears.
>
> Please provide at least the information you can provide: what did you
> type at the "C-x 8 RET" prompt, and when exactly it crashed during
> this command. Also, how to setup vertico-posframe-mode like you do.
This is how I reproduce this crash:
1. Create a fresh Emacs instance.
2. Press C-x 8 RET before doing anything else.
If vertico-posframe is displayed successfully at least once (e.g. using M-x)
then Emacs won’t crash from insert-char anymore.
3. Emacs crashes before the child frame appears, so I don’t have a
chance to type anything.
There is a minimal init.el with which I can reproduce this crash:
(package-install 'vertico)
(package-install 'vertico-posframe)
(use-package vertico
:hook (after-init . vertico-mode))
(use-package vertico-posframe
:hook (vertico-mode . vertico-posframe-mode))
> Basically, these problems are impossible to debug without a
> reproducible recipe, so any details count.
>
> Thanks in advance.
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#61703
; Package
emacs
.
(Wed, 22 Feb 2023 14:08:01 GMT)
Full text and
rfc822 format available.
Message #14 received at 61703 <at> debbugs.gnu.org (full text, mbox):
> From: Kai Ma <justksqsf <at> gmail.com>
> Date: Wed, 22 Feb 2023 20:59:54 +0800
> Cc: 61703 <at> debbugs.gnu.org
>
> 1. Create a fresh Emacs instance.
>
> 2. Press C-x 8 RET before doing anything else.
> If vertico-posframe is displayed successfully at least once (e.g. using M-x)
> then Emacs won’t crash from insert-char anymore.
>
> 3. Emacs crashes before the child frame appears, so I don’t have a
> chance to type anything.
>
>
> There is a minimal init.el with which I can reproduce this crash:
>
> (package-install 'vertico)
> (package-install 'vertico-posframe)
>
> (use-package vertico
> :hook (after-init . vertico-mode))
>
> (use-package vertico-posframe
> :hook (vertico-mode . vertico-posframe-mode))
Thanks. Unfortunately, it doesn't crash for me, after doing these
steps.
Any other steps I could try to increase the probability of a crash?
Does this happen with any font you use as the default font?
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#61703
; Package
emacs
.
(Wed, 22 Feb 2023 18:47:01 GMT)
Full text and
rfc822 format available.
Message #17 received at 61703 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
> On Feb 22, 2023, at 22:08, Eli Zaretskii <eliz <at> gnu.org> wrote:
>
>> From: Kai Ma <justksqsf <at> gmail.com>
>> Date: Wed, 22 Feb 2023 20:59:54 +0800
>> Cc: 61703 <at> debbugs.gnu.org
>>
>> 1. Create a fresh Emacs instance.
>>
>> 2. Press C-x 8 RET before doing anything else.
>> If vertico-posframe is displayed successfully at least once (e.g. using M-x)
>> then Emacs won’t crash from insert-char anymore.
>>
>> 3. Emacs crashes before the child frame appears, so I don’t have a
>> chance to type anything.
>>
>>
>> There is a minimal init.el with which I can reproduce this crash:
>>
>> (package-install 'vertico)
>> (package-install 'vertico-posframe)
>>
>> (use-package vertico
>> :hook (after-init . vertico-mode))
>>
>> (use-package vertico-posframe
>> :hook (vertico-mode . vertico-posframe-mode))
>
> Thanks. Unfortunately, it doesn't crash for me, after doing these
> steps.
>
> Any other steps I could try to increase the probability of a crash?
I tried to make a self-contained tarball.
[repro.tgz (application/octet-stream, attachment)]
[Message part 3 (text/plain, inline)]
emacs -Q -l bug.el, and then C-x 8 RET.
> Does this happen with any font you use as the default font?
I tested against some fonts with
emacs -Q --eval "(set-face-attribute 'default nil :family FONT)" -l bug.el
Indeed the choice of the default font seems relevant. The observed results:
| Menlo (default monospace font) | crash |
| Courier New | crash |
| Courier Prime | no crash |
| JetBrains Mono | no crash |
| Cascadia Mono | crash |
| Fira Code | no crash |
| Fira Mono | crash |
Hope this helps.
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#61703
; Package
emacs
.
(Wed, 22 Feb 2023 20:19:02 GMT)
Full text and
rfc822 format available.
Message #20 received at 61703 <at> debbugs.gnu.org (full text, mbox):
> From: Kai Ma <justksqsf <at> gmail.com>
> Date: Thu, 23 Feb 2023 02:45:58 +0800
> Cc: 61703 <at> debbugs.gnu.org
>
> > Thanks. Unfortunately, it doesn't crash for me, after doing these
> > steps.
> >
> > Any other steps I could try to increase the probability of a crash?
>
> I tried to make a self-contained tarball.
Thanks, but this still doesn't crash for me.
My build is unoptimized (-O0). Do you see the crash if you rebuild
with -O0?
> I tested against some fonts with
>
> emacs -Q --eval "(set-face-attribute 'default nil :family FONT)" -l bug.el
>
> Indeed the choice of the default font seems relevant. The observed results:
>
> | Menlo (default monospace font) | crash |
> | Courier New | crash |
> | Courier Prime | no crash |
> | JetBrains Mono | no crash |
> | Cascadia Mono | crash |
> | Fira Code | no crash |
> | Fira Mono | crash |
I'm on MS-Windows, where Courier New is the default font, and it still
doesn't crash...
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#61703
; Package
emacs
.
(Wed, 22 Feb 2023 21:30:02 GMT)
Full text and
rfc822 format available.
Message #23 received at 61703 <at> debbugs.gnu.org (full text, mbox):
>> Indeed the choice of the default font seems relevant. The observed
>> results:
>>
>> | Menlo (default monospace font) | crash |
>> | Courier New | crash |
>> | Courier Prime | no crash |
>> | JetBrains Mono | no crash |
>> | Cascadia Mono | crash |
>> | Fira Code | no crash |
>> | Fira Mono | crash |
>
> I'm on MS-Windows, where Courier New is the default font, and it still
> doesn't crash...
>
FWIW, I tried that recipe here (Debian GNU/Linux) with Fira Mono, Menlo
and Cascadia Mono, without experiencing any crash. Perhaps it's a macOS
specific bug.
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#61703
; Package
emacs
.
(Tue, 05 Sep 2023 23:45:01 GMT)
Full text and
rfc822 format available.
Message #26 received at 61703 <at> debbugs.gnu.org (full text, mbox):
tags 61703 + unreproducible
thanks
Gregory Heytings <gregory <at> heytings.org> writes:
>>> Indeed the choice of the default font seems relevant. The observed results:
>>>
>>> | Menlo (default monospace font) | crash |
>>> | Courier New | crash |
>>> | Courier Prime | no crash |
>>> | JetBrains Mono | no crash |
>>> | Cascadia Mono | crash |
>>> | Fira Code | no crash |
>>> | Fira Mono | crash |
>>
>> I'm on MS-Windows, where Courier New is the default font, and it still doesn't
>> crash...
>>
>
> FWIW, I tried that recipe here (Debian GNU/Linux) with Fira Mono, Menlo and
> Cascadia Mono, without experiencing any crash. Perhaps it's a macOS specific
> bug.
I can't reproduce this here. I do get the following error when running
the reproducer though:
eval: Symbol’s value as variable is void: FONT
In GNU Emacs 30.0.50 (build 5, x86_64-apple-darwin21.6.0, NS
appkit-2113.60 Version 12.6.8 (Build 21G725)) of 2023-09-04 built on
MY-MacBook-Pro
Added tag(s) unreproducible.
Request was from
Stefan Kangas <stefankangas <at> gmail.com>
to
control <at> debbugs.gnu.org
.
(Tue, 05 Sep 2023 23:45:02 GMT)
Full text and
rfc822 format available.
This bug report was last modified 1 year and 283 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.