all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* bug#65198: 29.1; Emacs29.1 crash in function face_for_font
@ 2023-08-10  9:57 张云峰
  2023-08-10 10:06 ` Eli Zaretskii
  0 siblings, 1 reply; 14+ messages in thread
From: 张云峰 @ 2023-08-10  9:57 UTC (permalink / raw)
  To: 65198

[-- Attachment #1: Type: text/plain, Size: 23425 bytes --]

In GNU Emacs 29.1 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.33,
cairo version 1.16.0) of 2023-08-10 built on zayfen
Windowing system distributor 'The X.Org Foundation', version 11.0.12201001
System Description: Ubuntu 22.04.3 LTS

Configured features:
CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GSETTINGS HARFBUZZ JPEG JSON
LIBOTF LIBSELINUX LIBSYSTEMD LIBXML2 MODULES NOTIFY INOTIFY PDUMPER PNG
RSVG SECCOMP SOUND SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS TREE_SITTER
WEBP X11 XDBE XIM XINPUT2 XPM GTK3 ZLIB

Important settings:
value of $LC_MONETARY: zh_CN.UTF-8
value of $LC_NUMERIC: zh_CN.UTF-8
value of $LC_TIME: zh_CN.UTF-8
value of $LANG: zh_CN.UTF-8
value of $XMODIFIERS: @im=fcitx5
locale-coding-system: utf-8-unix

Major mode: Dashboard

Minor modes in effect:
global-tempel-abbrev-mode: t
tempel-abbrev-mode: t
editorconfig-mode: t
gcmh-mode: t
eros-mode: t
undo-fu-session-global-mode: t
which-function-mode: t
global-subword-mode: t
subword-mode: t
desktop-save-mode: t
global-so-long-mode: t
savehist-mode: t
save-place-mode: t
minibuffer-depth-indicate-mode: t
delete-selection-mode: t
pixel-scroll-precision-mode: t
winner-mode: t
windmove-mode: t
global-treesit-auto-mode: t
dirvish-override-dired-mode: t
vertico-mode: t
all-the-icons-completion-mode: t
marginalia-mode: t
doom-modeline-mode: t
which-key-mode: t
global-auto-revert-mode: t
display-time-mode: t
recentf-mode: t
general-override-mode: t
override-global-mode: t
straight-use-package-mode: t
straight-package-neutering-mode: t
straight-live-modifications-mode: t
puni-global-mode: t
puni-mode: t
tooltip-mode: t
global-eldoc-mode: t
show-paren-mode: t
electric-indent-mode: t
mouse-wheel-mode: t
tab-bar-mode: t
file-name-shadow-mode: t
global-font-lock-mode: t
font-lock-mode: t
blink-cursor-mode: t
buffer-read-only: 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


Features:
(shadow sort disp-table spell-fu ispell mail-extr network-stream nsm
display-line-numbers hl-line hideshow page-break-lines tempel-collection
tempel rainbow-delimiters highlight-numbers parent-mode symbol-overlay
hl-todo flycheck-posframe posframe flycheck find-func jka-compr
let-alist lsp-bridge lsp-bridge-org-babel lsp-bridge-lsp-installer
lsp-bridge-diagnostic lsp-bridge-code-action acm acm-quick-access
acm-backend-copilot acm-backend-codeium array acm-backend-citre
acm-backend-tailwind acm-backend-tabnine acm-backend-telega
acm-backend-tempel acm-backend-search-sdcv-words
acm-backend-search-file-words acm-backend-path acm-backend-lsp
acm-backend-elisp acm-backend-yas yasnippet-snippets yasnippet acm-icon
svg dom lsp-bridge-call-hierarchy lsp-bridge-peek lsp-bridge-jdtls
lsp-bridge-ref grep compile comint ansi-osc ansi-color lsp-bridge-epc
acm-frame diff markdown-mode noutline outline warnings editorconfig
editorconfig-core editorconfig-core-handle editorconfig-fnmatch ligature
emacsbug message yank-media puny rfc822 mml mml-sec epa epg rfc6068
epg-config gnus-util time-date mm-decode mm-bodies mm-encode mail-parse
rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045
ietf-drums mm-util mail-prsvr mail-utils puni gcmh server
multiple-cursors mc-separate-operations rectangular-region-mode
mc-mark-pop mc-edit-lines iedit iedit-lib mc-hide-unmatched-lines-mode
mc-mark-more mc-cycle-cursors multiple-cursors-core rect rivenemacs-lazy
mule-util cursor-sensor vertico-repeat add-log derived vlf-setup advice
eros elisp-demos re-elisp-extras undo-fu-session undo-fu orderless
which-func imenu cap-words superword subword desktop frameset so-long
savehist saveplace mb-depth delsel pixel-scroll cua-base winner battery
dbus face-remap pulse color xml windmove rivenemacs-loaded treesit-auto
eldoc-box icons dirvish transient format-spec dired dired-loaddefs
vertico-directory vertico all-the-icons-completion marginalia
doom-modeline doom-modeline-segments doom-modeline-env
doom-modeline-core shrink-path f f-shortdoc s dash nerd-icons
nerd-icons-faces nerd-icons-data nerd-icons-data-mdicon
nerd-icons-data-flicon nerd-icons-data-codicon nerd-icons-data-devicon
nerd-icons-data-sucicon nerd-icons-data-wicon nerd-icons-data-faicon
nerd-icons-data-powerline nerd-icons-data-octicon
nerd-icons-data-pomicon nerd-icons-data-ipsicon compat which-key
exec-path-from-shell dracula-theme autorevert filenotify re-python
python-pytest-autoloads projectile-autoloads nose-autoloads
py-isort-autoloads pyimport-autoloads shut-up-autoloads
pip-requirements-autoloads rust rust-mode-autoloads jsdoc-autoloads
sass-mode-autoloads haml-mode-autoloads web-mode-autoloads
emmet-mode-autoloads re-lua lua-mode-autoloads re-popup
eldoc-box-autoloads re-indent aggressive-indent-mode-autoloads re-fold
ts-fold-indicators-autoloads ts-fold-autoloads fringe-helper-autoloads
tree-sitter-autoloads re-formatter clang-format-autoloads
editorconfig-autoloads apheleia-autoloads re-treesit
treesit-auto-autoloads treesit re-jump smart-jump xref
dumb-jump-autoloads re-hackernews hackernews-autoloads re-leetcode
leetcode-autoloads log4e-autoloads graphql-autoloads re-window re-binary
re-workspaces re-tty xclip-autoloads re-tools bitwarden-autoloads
logview-autoloads datetime-autoloads extmap-autoloads
journalctl-mode-autoloads pkgbuild-mode-autoloads systemd-autoloads
docker-compose-mode-autoloads docker-autoloads aio-autoloads
multi-vterm-autoloads vterm-autoloads tldr-autoloads
ssh-deploy-autoloads re-files treemacs-all-the-icons-autoloads
treemacs-autoloads cfrs-autoloads pfuture-autoloads vlf-autoloads
dirvish-autoloads re-natural-langs lexic-autoloads
go-translate-autoloads spell-fu-autoloads re-latex
auctex-latexmk-autoloads auctex-autoloads tex-site re-docs
edraw-autoloads crdt-autoloads nov-autoloads esxml-autoloads
kv-autoloads pdf-tools-autoloads re-extra crux-autoloads re-org
consult-org-roam-autoloads org-roam-ui-autoloads websocket-autoloads
simple-httpd-autoloads org-roam-autoloads org-present-autoloads
org-fragtog-autoloads org-modern-autoloads org-appear-autoloads
ox-hugo-autoloads tomelr-autoloads engrave-faces-autoloads
org-contrib-autoloads re-data ob-d2-autoloads d2-mode-autoloads
ob-mermaid-autoloads mermaid-mode-autoloads plantuml-mode-autoloads
graphviz-dot-mode-autoloads json-mode-autoloads json-snatcher-autoloads
toml-mode-autoloads yaml-pro-autoloads yaml-mode-autoloads
csv-mode-autoloads re-lisp eros-autoloads info-colors-autoloads
helpful-autoloads elisp-refs-autoloads elisp-demos-autoloads
sly-macrostep-autoloads macrostep-geiser-autoloads macrostep-autoloads
cider-autoloads sesman-autoloads spinner-autoloads queue-autoloads
parseedn-autoloads parseclj-autoloads clojure-mode-autoloads
geiser-stklos-autoloads geiser-racket-autoloads geiser-mit-autoloads
geiser-kawa-autoloads geiser-guile-autoloads geiser-gauche-autoloads
geiser-gambit-autoloads geiser-chicken-autoloads geiser-chibi-autoloads
geiser-chez-autoloads geiser-autoloads racket-mode-autoloads
sly-autoloads re-lsp-bridge yasnippet-snippets-autoloads
yasnippet-autoloads re-debug disaster-autoloads realgud-autoloads
realgud-recursive-autoloads test-simple-autoloads loc-changes-autoloads
load-relative-autoloads re-checkers re-project
consult-project-extra-autoloads re-vc repo-autoloads hydra ring lv
git-modes-autoloads git-timemachine-autoloads diff-hl-autoloads
emojify-autoloads forge-autoloads yaml-autoloads markdown-mode-autoloads
ghub-autoloads treepy-autoloads closql-autoloads emacsql-autoloads
magit-todos-autoloads pcre2el-autoloads async-autoloads magit-autoloads
magit-section-autoloads git-commit-autoloads with-editor-autoloads
re-multi-cursors multiple-cursors-autoloads iedit-autoloads re-undo
undo-fu-session-autoloads undo-fu-autoloads vundo-autoloads re-daemon
re-editor rainbow-mode-autoloads hl-todo-autoloads anzu-autoloads
expand-region-autoloads highlight-numbers-autoloads
parent-mode-autoloads rainbow-delimiters-autoloads ligature-autoloads
pcache-autoloads tempel-collection-autoloads edmacro kmacro
tempel-autoloads re-ui focus-autoloads page-break-lines-autoloads
mixed-pitch-autoloads visual-fill-column-autoloads svg-lib-autoloads
re-font re-completion vertico-prescient-autoloads prescient-autoloads
find-file-in-project-autoloads vertico-autoloads orderless-autoloads
all-the-icons-completion-autoloads marginalia-autoloads
embark-consult-autoloads embark-autoloads consult-autoloads re-core-ui
doom-modeline-autoloads shrink-path-autoloads f-autoloads
nerd-icons-autoloads bookmark text-property-search pp project time
dashboard dashboard-widgets all-the-icons all-the-icons-faces
data-material data-weathericons data-octicons data-fileicons
data-faicons data-alltheicons recentf tree-widget wid-edit ffap
thingatpt dashboard-autoloads all-the-icons-autoloads
modus-themes-autoloads re-defuns re-emacs-keybindings hydra-autoloads
lv-autoloads re-general-ready general general-autoloads
which-key-autoloads re-gc gcmh-autoloads re-builtin re-bootstrap
explain-pause-mode-autoloads exec-path-from-shell-autoloads use-package
use-package-ensure use-package-delight use-package-diminish
use-package-bind-key bind-key use-package-core straight-autoloads
cl-extra help-mode straight re-splash re-defaults pcase rx re-loaddefs
ace-window-autoloads avy-autoloads dracula-theme-autoloads
esup-autoloads flycheck-posframe-autoloads flycheck-rust-autoloads
fussy-autoloads flx-autoloads goto-last-change-autoloads
js-doc-autoloads package-lint-autoloads pkg-info-autoloads epl-autoloads
poetry-autoloads popup-autoloads posframe-autoloads puni-autoloads
easy-mmode pyvenv-autoloads quickrun-autoloads ht-autoloads
dash-autoloads s-autoloads smart-jump-autoloads symbol-overlay-autoloads
tablist-autoloads transient-autoloads info compat-autoloads finder-inf
tsc-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 re-vars china-util rmc
iso-transl tooltip cconv 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 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 dbusbind inotify dynamic-setting system-font-setting
font-render-setting cairo move-toolbar gtk x-toolkit xinput2 x multi-tty
make-network-process emacs)

Memory information:
((conses 16 789144 521644)
(symbols 48 36361 10)
(strings 32 239057 97417)
(string-bytes 1 6986378)
(vectors 16 62923)
(vector-slots 8 1738733 519301)
(floats 8 794 931)
(intervals 56 868 345)
(buffers 984 17))


;;;;; GDB INFO ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

Thread 1 "emacs" received signal SIGSEGV, Segmentation fault.
0x00005555556859b8 in face_for_font (f=0x555561746d40,
font_object=0x555558465ec5, base_face=base_face@entry=0x0) at xfaces.c:4931
4931 base_face = base_face->ascii_face;
(gdb) bt
#0 0x00005555556859b8 in face_for_font (f=0x555561746d40,
font_object=0x555558465ec5, base_face=base_face@entry=0x0) at xfaces.c:4931
#1 0x00005555555ee682 in get_next_display_element (it=it@entry=0x7fffffff6c90)
at xdisp.c:8322
#2 0x00005555555eacb0 in move_it_in_display_line_to
(it=it@entry=0x7fffffff6c90,
to_charpos=to_charpos@entry=412, to_x=to_x@entry=2147483647,
op=op@entry=(MOVE_TO_X
| MOVE_TO_POS))
at xdisp.c:9829
#3 0x00005555555f002a in move_it_to (it=0x7fffffff6c90, to_charpos=412,
to_x=<optimized out>, to_y=<optimized out>, to_vpos=<optimized out>, op=11)
at xdisp.c:10500
#4 0x0000555555604e4e in window_text_pixel_size
(window=<optimized out>, from=<optimized out>, to=<optimized out>,
x_limit=0x1ce2, y_limit=<optimized out>, mode_lines=0x0,
ignore_line_at_end=0x0) at xdisp.c:11455
#5 0x0000555555605ae6 in Fwindow_text_pixel_size (window=0x555561746f95,
from=0x0, to=0x0, x_limit=0x1ce2, y_limit=0xaf2, mode_lines=0x0,
ignore_line_at_end=0x0) at xdisp.c:11629
#6 0x0000555555771442 in funcall_subr (subr=0x555555d0e5a0
<Swindow_text_pixel_size>, numargs=numargs@entry=5,
args=args@entry=0x7ffff0bff1f0)
at eval.c:3046
#7 0x00005555557b6523 in exec_byte_code (fun=<optimized out>,
args_template=<optimized out>, nargs=<optimized out>, args=<optimized out>)
at bytecode.c:809
#8 0x000055555576df83 in Ffuncall (nargs=6, args=0x7fffffff9570) at
eval.c:2995
#9 0x0000555555771ca7 in eval_sub (form=<optimized out>) at eval.c:2470
#10 0x0000555555773eb5 in Fprogn (body=0x0) at eval.c:436
#11 FletX (args=0x55555d67e733) at eval.c:958
#12 0x0000555555771e22 in eval_sub (form=<optimized out>) at eval.c:2449
#13 0x0000555555772ced in Fprogn (body=0x0) at eval.c:436
#14 funcall_lambda (fun=0x55555d67e013, nargs=3, arg_vector=0x7fffffff9810)
at eval.c:3233
#15 0x000055555577347f in apply_lambda (fun=<optimized out>,
args=<optimized out>, count=...) at eval.c:3103
#16 0x0000555555771ad6 in eval_sub (form=<optimized out>) at eval.c:2588
#17 0x0000555555773eb5 in Fprogn (body=0x55555ef746e3) at eval.c:436
#18 FletX (args=0x55555ef74b43) at eval.c:958
#19 0x0000555555771e22 in eval_sub (form=<optimized out>) at eval.c:2449
#20 0x0000555555772ced in Fprogn (body=0x0) at eval.c:436
#21 funcall_lambda (fun=0x55555ef738c3, nargs=0, arg_vector=0x7fffffff9b00)
at eval.c:3233
#22 0x000055555577347f in apply_lambda (fun=<optimized out>,
args=<optimized out>, count=...) at eval.c:3103
#23 0x0000555555771ad6 in eval_sub (form=<optimized out>) at eval.c:2588
#24 0x0000555555773a9d in Fprogn (body=0x0) at eval.c:436
#25 Flet (args=<optimized out>) at eval.c:1026
#26 0x0000555555771e22 in eval_sub (form=<optimized out>) at eval.c:2449
#27 0x0000555555771e22 in eval_sub (form=<optimized out>) at eval.c:2449
#28 0x0000555555773eb5 in Fprogn (body=0x0) at eval.c:436
#29 FletX (args=0x55555ef74d83) at eval.c:958
#30 0x0000555555771e22 in eval_sub (form=<optimized out>) at eval.c:2449
#31 0x000055555577212d in Fprogn (body=0x0) at eval.c:436
#32 0x0000555555771e22 in eval_sub (form=<optimized out>) at eval.c:2449
#33 0x0000555555771e22 in eval_sub (form=<optimized out>) at eval.c:2449
#34 0x0000555555772ced in Fprogn (body=0x0) at eval.c:436
#35 funcall_lambda (fun=0x55555ef74e93, nargs=1, arg_vector=0x7fffffffa170)
at eval.c:3233
#36 0x000055555577347f in apply_lambda (fun=<optimized out>,
args=<optimized out>, count=...) at eval.c:3103
#37 0x0000555555771ad6 in eval_sub (form=<optimized out>) at eval.c:2588
#38 0x0000555555771e22 in eval_sub (form=<optimized out>) at eval.c:2449
#39 0x000055555577212d in Fprogn (body=0x0) at eval.c:436
#40 0x0000555555771e22 in eval_sub (form=<optimized out>) at eval.c:2449
#41 0x0000555555771e22 in eval_sub (form=<optimized out>) at eval.c:2449
#42 0x0000555555773eb5 in Fprogn (body=0x0) at eval.c:436
#43 FletX (args=0x55555f141f93) at eval.c:958
#44 0x0000555555771e22 in eval_sub (form=<optimized out>) at eval.c:2449
#45 0x000055555577212d in Fprogn (body=0x0, body@entry=0x55555f141fc3) at
eval.c:436
#46 0x000055555575df5c in Fsave_current_buffer (args=0x55555f141fc3) at
editfns.c:874
#47 0x0000555555771e22 in eval_sub (form=<optimized out>) at eval.c:2449
--Type <RET> for more, q to quit, c to continue without paging--
#48 0x0000555555771e22 in eval_sub (form=<optimized out>) at eval.c:2449
#49 0x0000555555773eb5 in Fprogn (body=0x0) at eval.c:436
#50 FletX (args=0x55555f141863) at eval.c:958
#51 0x0000555555771e22 in eval_sub (form=<optimized out>) at eval.c:2449
#52 0x0000555555773eb5 in Fprogn (body=0x0) at eval.c:436
#53 FletX (args=0x55555f141893) at eval.c:958
#54 0x0000555555771e22 in eval_sub (form=<optimized out>) at eval.c:2449
#55 0x0000555555772ced in Fprogn (body=0x0) at eval.c:436
#56 funcall_lambda (fun=0x55555f141953, nargs=2, arg_vector=0x7fffffffaab0)
at eval.c:3233
#57 0x000055555577347f in apply_lambda (fun=<optimized out>,
args=<optimized out>, count=...) at eval.c:3103
#58 0x0000555555771ad6 in eval_sub (form=<optimized out>) at eval.c:2588
#59 0x00005555557745cb in Feval (form=0x55555e11a423, lexical=<optimized
out>) at eval.c:2361
#60 0x0000555555771db9 in eval_sub (form=<optimized out>) at eval.c:2501
#61 0x0000555555772ced in Fprogn (body=0x55555f0dc2a3) at eval.c:436
#62 funcall_lambda (fun=0x55555f0dbcf3, nargs=1, arg_vector=0x7fffffffadf8)
at eval.c:3233
#63 0x000055555576df83 in Ffuncall (nargs=2, args=0x7fffffffadf0) at
eval.c:2995
#64 0x000055555576e472 in Fapply (nargs=2, args=0x7fffffffadf0) at
eval.c:2623
#65 0x0000555555771ca7 in eval_sub (form=<optimized out>) at eval.c:2470
#66 0x0000555555773d06 in FletX (args=0x55555d799df3) at /home/
zhangyunfeng@pudu.com/Download/emacs-emacs-29.1/src/lisp.h:1529
#67 0x0000555555771e22 in eval_sub (form=<optimized out>) at eval.c:2449
#68 0x0000555555774453 in internal_lisp_condition_case (var=<optimized
out>, bodyform=<optimized out>, handlers=<optimized out>) at eval.c:1428
#69 0x0000555555771e22 in eval_sub (form=<optimized out>) at eval.c:2449
#70 0x0000555555772a25 in Fprogn (body=0x0) at eval.c:436
#71 Fcond (args=<optimized out>) at eval.c:416
#72 0x0000555555771e22 in eval_sub (form=<optimized out>) at eval.c:2449
#73 0x0000555555773eb5 in Fprogn (body=0x0) at eval.c:436
#74 FletX (args=0x55555d799fa3) at eval.c:958
#75 0x0000555555771e22 in eval_sub (form=<optimized out>) at eval.c:2449
#76 0x0000555555773a9d in Fprogn (body=0x0) at eval.c:436
#77 Flet (args=<optimized out>) at eval.c:1026
#78 0x0000555555771e22 in eval_sub (form=<optimized out>) at eval.c:2449
#79 0x0000555555772ced in Fprogn (body=0x0) at eval.c:436
#80 funcall_lambda (fun=0x55555d799903, nargs=4, arg_vector=0x7fffffffb558)
at eval.c:3233
#81 0x000055555576df83 in Ffuncall (nargs=5, args=0x7fffffffb550) at
eval.c:2995
#82 0x000055555576e200 in Fapply (nargs=3, args=0x7fffffffb5f0) at
eval.c:2666
#83 0x0000555555771ca7 in eval_sub (form=<optimized out>) at eval.c:2470
#84 0x0000555555772ced in Fprogn (body=0x0) at eval.c:436
#85 funcall_lambda (fun=0x55556088b4e3, nargs=1, arg_vector=0x7fffffffb778)
at eval.c:3233
#86 0x000055555576df83 in Ffuncall (nargs=2, args=0x7fffffffb770) at
eval.c:2995
#87 0x0000555555771ca7 in eval_sub (form=<optimized out>) at eval.c:2470
#88 0x0000555555773891 in Flet (args=<optimized out>) at eval.c:996
#89 0x0000555555771e22 in eval_sub (form=<optimized out>) at eval.c:2449
#90 0x0000555555774453 in internal_lisp_condition_case (var=<optimized
out>, bodyform=<optimized out>, handlers=<optimized out>) at eval.c:1428
#91 0x0000555555771e22 in eval_sub (form=<optimized out>) at eval.c:2449
#92 0x0000555555773a9d in Fprogn (body=0x0) at eval.c:436
#93 Flet (args=<optimized out>) at eval.c:1026
#94 0x0000555555771e22 in eval_sub (form=<optimized out>) at eval.c:2449
#95 0x0000555555772a25 in Fprogn (body=0x0) at eval.c:436
#96 Fcond (args=<optimized out>) at eval.c:416
#97 0x0000555555771e22 in eval_sub (form=<optimized out>) at eval.c:2449
--Type <RET> for more, q to quit, c to continue without paging--
#98 0x0000555555773a9d in Fprogn (body=0x0) at eval.c:436
#99 Flet (args=<optimized out>) at eval.c:1026
#100 0x0000555555771e22 in eval_sub (form=<optimized out>) at eval.c:2449
#101 0x0000555555772ced in Fprogn (body=0x0) at eval.c:436
#102 funcall_lambda (fun=0x55555d741ba3, nargs=3,
arg_vector=0x7fffffffbec0) at eval.c:3233
#103 0x000055555577347f in apply_lambda (fun=<optimized out>,
args=<optimized out>, count=...) at eval.c:3103
#104 0x0000555555771ad6 in eval_sub (form=<optimized out>) at eval.c:2588
#105 0x00005555557721e7 in Fsetq (args=<optimized out>) at eval.c:483
#106 0x0000555555771e22 in eval_sub (form=<optimized out>) at eval.c:2449
#107 0x0000555555774453 in internal_lisp_condition_case (var=<optimized
out>, bodyform=<optimized out>, handlers=<optimized out>) at eval.c:1428
#108 0x0000555555771e22 in eval_sub (form=<optimized out>) at eval.c:2449
#109 0x0000555555773eb5 in Fprogn (body=0x55555d6e6453) at eval.c:436
#110 FletX (args=0x55555d6e63d3) at eval.c:958
#111 0x0000555555771e22 in eval_sub (form=<optimized out>) at eval.c:2449
#112 0x000055555577212d in Fprogn (body=0x0) at eval.c:436
#113 0x0000555555771e22 in eval_sub (form=<optimized out>) at eval.c:2449
#114 0x0000555555771e22 in eval_sub (form=<optimized out>) at eval.c:2449
#115 0x0000555555772ced in Fprogn (body=0x0) at eval.c:436
#116 funcall_lambda (fun=0x55555d6e5d13, nargs=0,
arg_vector=0x7ffff0bff058) at eval.c:3233
#117 0x000055555576df83 in Ffuncall (nargs=1, args=0x7ffff0bff050) at
eval.c:2995
#118 0x000055555576e398 in Fapply (nargs=2, args=0x7ffff0bff050) at
eval.c:2619
#119 0x00005555557b6523 in exec_byte_code (fun=<optimized out>,
args_template=<optimized out>, nargs=<optimized out>, args=<optimized out>)
at bytecode.c:809
#120 0x000055555576df83 in Ffuncall (nargs=nargs@entry=2,
args=args@entry=0x7fffffffc760)
at eval.c:2995
#121 0x00005555556e74de in call1 (arg1=0x55555baa90ed, fn=0xfd80) at /home/
zhangyunfeng@pudu.com/Download/emacs-emacs-29.1/src/lisp.h:3248
#122 timer_check_2 (idle_timers=<optimized out>, timers=<optimized out>) at
keyboard.c:4690
#123 timer_check () at keyboard.c:4756
#124 0x00005555557c4814 in wait_reading_process_output
(time_limit=time_limit@entry=30, nsecs=nsecs@entry=0,
read_kbd=read_kbd@entry=-1, do_display=do_display@entry=true,
wait_for_cell=wait_for_cell@entry=0x0, wait_proc=wait_proc@entry=0x0,
just_wait_proc=<optimized out>) at process.c:5386
#125 0x00005555555bb074 in sit_for (timeout=timeout@entry=0x7a,
reading=reading@entry=true, display_option=display_option@entry=1) at
dispnew.c:6264
#126 0x00005555556ef589 in read_char (commandflag=1, map=0x55555de3ab13,
prev_event=0x0, used_mouse_menu=0x7fffffffd1cb, end_time=0x0) at
keyboard.c:2881
#127 0x00005555556efe58 in read_key_sequence
(keybuf=<optimized out>, prompt=0x0, dont_downcase_last=<optimized out>,
can_return_switch_frame=true, fix_current_buffer=true,
prevent_redisplay=<optimized out>) at keyboard.c:10083
#128 0x00005555556f1a60 in command_loop_1 () at keyboard.c:1384
#129 0x000055555576c587 in internal_condition_case
(bfun=bfun@entry=0x5555556f1880
<command_loop_1>, handlers=handlers@entry=0x90, hfun=hfun@entry=0x5555556e4b40
<cmd_error>) at eval.c:1474
#130 0x00005555556dd01e in command_loop_2 (handlers=handlers@entry=0x90) at
keyboard.c:1133
#131 0x000055555576c4c9 in internal_catch (tag=tag@entry=0x10080,
func=func@entry=0x5555556dcff0 <command_loop_2>, arg=arg@entry=0x90) at
eval.c:1197
#132 0x00005555556dcfb9 in command_loop () at keyboard.c:1111
#133 0x00005555556e4698 in recursive_edit_1 () at keyboard.c:720
#134 0x00005555556e4a40 in Frecursive_edit () at keyboard.c:803
#135 0x00005555555b00d5 in main (argc=<optimized out>, argv=<optimized
out>) at emacs.c:2529

[-- Attachment #2: Type: text/html, Size: 26347 bytes --]

^ permalink raw reply	[flat|nested] 14+ messages in thread

* bug#65198: 29.1; Emacs29.1 crash in function face_for_font
  2023-08-10  9:57 bug#65198: 29.1; Emacs29.1 crash in function face_for_font 张云峰
@ 2023-08-10 10:06 ` Eli Zaretskii
       [not found]   ` <CA+cG9GxATqwi7-aFEvma0zi3AZM5y6eshU510oPFohuKwhHF4w@mail.gmail.com>
  0 siblings, 1 reply; 14+ messages in thread
From: Eli Zaretskii @ 2023-08-10 10:06 UTC (permalink / raw)
  To: 张云峰; +Cc: 65198

> From: 张云峰 <zhangyunfeng0101@gmail.com>
> Date: Thu, 10 Aug 2023 17:57:20 +0800
> 
> ;;;;; GDB INFO ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 
> 
> Thread 1 "emacs" received signal SIGSEGV, Segmentation fault. 
> 0x00005555556859b8 in face_for_font (f=0x555561746d40, font_object=0x555558465ec5,
> base_face=base_face@entry=0x0) at xfaces.c:4931 
> 4931 base_face = base_face->ascii_face; 
> (gdb) bt 
> #0 0x00005555556859b8 in face_for_font (f=0x555561746d40, font_object=0x555558465ec5,
> base_face=base_face@entry=0x0) at xfaces.c:4931 
> #1 0x00005555555ee682 in get_next_display_element (it=it@entry=0x7fffffff6c90) at xdisp.c:8322 
> #2 0x00005555555eacb0 in move_it_in_display_line_to (it=it@entry=0x7fffffff6c90,
> to_charpos=to_charpos@entry=412, to_x=to_x@entry=2147483647, op=op@entry=(MOVE_TO_X
> | MOVE_TO_POS)) 
> at xdisp.c:9829 
> #3 0x00005555555f002a in move_it_to (it=0x7fffffff6c90, to_charpos=412, to_x=<optimized out>,
> to_y=<optimized out>, to_vpos=<optimized out>, op=11) at xdisp.c:10500 
> #4 0x0000555555604e4e in window_text_pixel_size 
> (window=<optimized out>, from=<optimized out>, to=<optimized out>, x_limit=0x1ce2,
> y_limit=<optimized out>, mode_lines=0x0, ignore_line_at_end=0x0) at xdisp.c:11455 
> #5 0x0000555555605ae6 in Fwindow_text_pixel_size (window=0x555561746f95, from=0x0,
> to=0x0, x_limit=0x1ce2, y_limit=0xaf2, mode_lines=0x0, ignore_line_at_end=0x0) at xdisp.c:11629 
> #6 0x0000555555771442 in funcall_subr (subr=0x555555d0e5a0 <Swindow_text_pixel_size>,
> numargs=numargs@entry=5, args=args@entry=0x7ffff0bff1f0) at eval.c:3046 

Thanks.  Any chance of a recipe to reproduce this crash?

The backtrace indicates that the code which crashed was called from a
timer function -- any idea what timer was that?





^ permalink raw reply	[flat|nested] 14+ messages in thread

* bug#65198: 29.1; Emacs29.1 crash in function face_for_font
       [not found]   ` <CA+cG9GxATqwi7-aFEvma0zi3AZM5y6eshU510oPFohuKwhHF4w@mail.gmail.com>
@ 2023-08-10 17:22     ` Eli Zaretskii
  2023-08-10 17:58       ` 张云峰
  0 siblings, 1 reply; 14+ messages in thread
From: Eli Zaretskii @ 2023-08-10 17:22 UTC (permalink / raw)
  To: 张云峰; +Cc: 65198

> From: 张云峰 <zhangyunfeng0101@gmail.com>
> Date: Thu, 10 Aug 2023 22:56:23 +0800
> 
> finally  I fix this bug by removing a piece of code:
> 
> (defun +set-chinese-font()
>   (interactive)
>   (set-fontset-font
>    t
>    'han
>    (cond
>     ((string-equal system-type "windows-nt")
>      (cond
>       ((member "Microsoft YaHei" (font-family-list)) "Microsoft YaHei")
>       ((member "Microsoft JhengHei" (font-family-list)) "Microsoft JhengHei")
>       ((member "SimHei" (font-family-list)) "SimHei")))
>     ((string-equal system-type "darwin")
>      (cond
>       ((member "Hei" (font-family-list)) "Hei")
>       ((member "Heiti SC" (font-family-list)) "Heiti SC")
>       ((member "Heiti TC" (font-family-list)) "Heiti TC")))
>     ((string-equal system-type "gnu/linux")
>      (cond
>       ((member "WenQuanYi Micro Hei" (font-family-list)) "WenQuanYi
> Micro Hei"))))))
> 
> (add-hook 'buffer-list-update-hook '+set-chinese-font)

I guess one of these fonts is faulty in some way?  Or maybe you have
neither of these fonts on that system, which would effectively specify
that characters of the han script have no font at all?  Of course,
normally the latter should just cause the han characters to display as
hex codes, not to cause crashes...

Are you saying that just having the above in your customization and
typing some Han character causes Emacs to crash?

P.S. And please use Reply All to reply, so that the bug address is
kept on the CC list.





^ permalink raw reply	[flat|nested] 14+ messages in thread

* bug#65198: 29.1; Emacs29.1 crash in function face_for_font
  2023-08-10 17:22     ` Eli Zaretskii
@ 2023-08-10 17:58       ` 张云峰
  2023-08-10 18:36         ` Eli Zaretskii
  0 siblings, 1 reply; 14+ messages in thread
From: 张云峰 @ 2023-08-10 17:58 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 65198


[-- Attachment #1.1: Type: text/plain, Size: 1791 bytes --]

[image: 2023-08-11_01-53.png]
when popup frame has the warning-icon (marked in picture) , emacs will
crash immediately.


Eli Zaretskii <eliz@gnu.org> 于2023年8月11日周五 01:22写道:

> > From: 张云峰 <zhangyunfeng0101@gmail.com>
> > Date: Thu, 10 Aug 2023 22:56:23 +0800
> >
> > finally  I fix this bug by removing a piece of code:
> >
> > (defun +set-chinese-font()
> >   (interactive)
> >   (set-fontset-font
> >    t
> >    'han
> >    (cond
> >     ((string-equal system-type "windows-nt")
> >      (cond
> >       ((member "Microsoft YaHei" (font-family-list)) "Microsoft YaHei")
> >       ((member "Microsoft JhengHei" (font-family-list)) "Microsoft
> JhengHei")
> >       ((member "SimHei" (font-family-list)) "SimHei")))
> >     ((string-equal system-type "darwin")
> >      (cond
> >       ((member "Hei" (font-family-list)) "Hei")
> >       ((member "Heiti SC" (font-family-list)) "Heiti SC")
> >       ((member "Heiti TC" (font-family-list)) "Heiti TC")))
> >     ((string-equal system-type "gnu/linux")
> >      (cond
> >       ((member "WenQuanYi Micro Hei" (font-family-list)) "WenQuanYi
> > Micro Hei"))))))
> >
> > (add-hook 'buffer-list-update-hook '+set-chinese-font)
>
> I guess one of these fonts is faulty in some way?  Or maybe you have
> neither of these fonts on that system, which would effectively specify
> that characters of the han script have no font at all?  Of course,
> normally the latter should just cause the han characters to display as
> hex codes, not to cause crashes...
>
> Are you saying that just having the above in your customization and
> typing some Han character causes Emacs to crash?
>
> P.S. And please use Reply All to reply, so that the bug address is
> kept on the CC list.
>

[-- Attachment #1.2: Type: text/html, Size: 2594 bytes --]

[-- Attachment #2: 2023-08-11_01-53.png --]
[-- Type: image/png, Size: 66428 bytes --]

^ permalink raw reply	[flat|nested] 14+ messages in thread

* bug#65198: 29.1; Emacs29.1 crash in function face_for_font
  2023-08-10 17:58       ` 张云峰
@ 2023-08-10 18:36         ` Eli Zaretskii
  2023-08-11  0:15           ` 张云峰
  0 siblings, 1 reply; 14+ messages in thread
From: Eli Zaretskii @ 2023-08-10 18:36 UTC (permalink / raw)
  To: 张云峰; +Cc: 65198

> From: 张云峰 <zhangyunfeng0101@gmail.com>
> Date: Fri, 11 Aug 2023 01:58:34 +0800
> Cc: 65198@debbugs.gnu.org
> 
> 2023-08-11_01-53.png
> when popup frame has the warning-icon (marked in picture) , emacs will crash immediately.

Can you try the patch below and see if it prevents the crash in these
cases?

diff --git a/src/xdisp.c b/src/xdisp.c
index 9cddcfe..b25bdc7 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -8312,9 +8312,14 @@ get_next_display_element (struct it *it)
       && success_p
       && FRAME_WINDOW_P (it->f))
     {
-      struct face *face = FACE_FROM_ID (it->f, it->face_id);
+      struct face *face = FACE_FROM_ID_OR_NULL (it->f, it->face_id);
 
-      if (it->what == IT_COMPOSITION && it->cmp_it.ch >= 0)
+      if (!face)
+	{
+	  it->what = IT_GLYPHLESS;
+	  it->glyphless_method = GLYPHLESS_DISPLAY_EMPTY_BOX;
+	}
+      else if (it->what == IT_COMPOSITION && it->cmp_it.ch >= 0)
 	{
 	  /* Automatic composition with glyph-string.   */
 	  Lisp_Object gstring = composition_gstring_from_id (it->cmp_it.id);





^ permalink raw reply related	[flat|nested] 14+ messages in thread

* bug#65198: 29.1; Emacs29.1 crash in function face_for_font
  2023-08-10 18:36         ` Eli Zaretskii
@ 2023-08-11  0:15           ` 张云峰
  2023-08-11  0:50             ` 张云峰
  0 siblings, 1 reply; 14+ messages in thread
From: 张云峰 @ 2023-08-11  0:15 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 65198

I've tested this patch, unfortunately, it doesn't work, still crashes

GDB information:
Thread 1 "emacs" received signal SIGSEGV, Segmentation fault.
0x0000555555619516 in produce_glyphless_glyph ()
(gdb) bt
#0  0x0000555555619516 in produce_glyphless_glyph ()
#1  0x0000555555640789 in gui_produce_glyphs ()
#2  0x0000555555623f70 in move_it_in_display_line_to ()
#3  0x000055555562935a in move_it_to ()
#4  0x000055555563e84f in window_text_pixel_size ()
#5  0x000055555563f526 in Fwindow_text_pixel_size ()
#6  0x00007fffe7dc07a8 in
F6669742d6672616d652d746f2d6275666665722d31_fit_frame_to_buffer_1_0 ()
    at /home/zayfen/github.com/emacs/src/../native-lisp/29.1.50-9e9f496f/preloaded/window-0d1b8b93-6f4eee58.eln
#7  0x000055555576a032 in funcall_subr ()
#8  0x0000555555766ba1 in Ffuncall ()
#9  0x000055555576aa04 in eval_sub ()
#10 0x000055555576ce6d in FletX ()
#11 0x000055555576aba7 in eval_sub ()
#12 0x000055555576be0d in funcall_lambda ()
#13 0x000055555576c3ee in apply_lambda ()
#14 0x000055555576a49b in eval_sub ()
#15 0x000055555576ce6d in FletX ()
#16 0x000055555576aba7 in eval_sub ()
#17 0x000055555576be0d in funcall_lambda ()
#18 0x000055555576c3ee in apply_lambda ()
#19 0x000055555576a49b in eval_sub ()
#20 0x000055555576ca2d in Flet ()
#21 0x000055555576aba7 in eval_sub ()
#22 0x000055555576aba7 in eval_sub ()
#23 0x000055555576ce6d in FletX ()
#24 0x000055555576aba7 in eval_sub ()
#25 0x000055555576af0d in Fprogn ()
#26 0x000055555576aba7 in eval_sub ()
#27 0x000055555576aba7 in eval_sub ()
#28 0x000055555576be0d in funcall_lambda ()
#29 0x000055555576c3ee in apply_lambda ()
#30 0x000055555576a49b in eval_sub ()
#31 0x000055555576aba7 in eval_sub ()
#32 0x000055555576af0d in Fprogn ()
#33 0x000055555576aba7 in eval_sub ()
#34 0x000055555576aba7 in eval_sub ()
#35 0x000055555576ce6d in FletX ()
#36 0x000055555576aba7 in eval_sub ()
#37 0x000055555576af0d in Fprogn ()
#38 0x000055555575666c in Fsave_current_buffer ()
#39 0x000055555576aba7 in eval_sub ()
#40 0x000055555576aba7 in eval_sub ()
#41 0x000055555576ce6d in FletX ()
#42 0x000055555576aba7 in eval_sub ()
#43 0x000055555576ce6d in FletX ()
#44 0x000055555576aba7 in eval_sub ()
#45 0x000055555576be0d in funcall_lambda ()
#46 0x000055555576c3ee in apply_lambda ()
#47 0x000055555576a49b in eval_sub ()
#48 0x000055555576d66b in Feval ()
#49 0x000055555576ace1 in eval_sub ()

Eli Zaretskii <eliz@gnu.org> 于2023年8月11日周五 02:36写道:
>
> > From: 张云峰 <zhangyunfeng0101@gmail.com>
> > Date: Fri, 11 Aug 2023 01:58:34 +0800
> > Cc: 65198@debbugs.gnu.org
> >
> > 2023-08-11_01-53.png
> > when popup frame has the warning-icon (marked in picture) , emacs will crash immediately.
>
> Can you try the patch below and see if it prevents the crash in these
> cases?
>
> diff --git a/src/xdisp.c b/src/xdisp.c
> index 9cddcfe..b25bdc7 100644
> --- a/src/xdisp.c
> +++ b/src/xdisp.c
> @@ -8312,9 +8312,14 @@ get_next_display_element (struct it *it)
>        && success_p
>        && FRAME_WINDOW_P (it->f))
>      {
> -      struct face *face = FACE_FROM_ID (it->f, it->face_id);
> +      struct face *face = FACE_FROM_ID_OR_NULL (it->f, it->face_id);
>
> -      if (it->what == IT_COMPOSITION && it->cmp_it.ch >= 0)
> +      if (!face)
> +       {
> +         it->what = IT_GLYPHLESS;
> +         it->glyphless_method = GLYPHLESS_DISPLAY_EMPTY_BOX;
> +       }
> +      else if (it->what == IT_COMPOSITION && it->cmp_it.ch >= 0)
>         {
>           /* Automatic composition with glyph-string.   */
>           Lisp_Object gstring = composition_gstring_from_id (it->cmp_it.id);





^ permalink raw reply	[flat|nested] 14+ messages in thread

* bug#65198: 29.1; Emacs29.1 crash in function face_for_font
  2023-08-11  0:15           ` 张云峰
@ 2023-08-11  0:50             ` 张云峰
  2023-08-11  6:12               ` Eli Zaretskii
  0 siblings, 1 reply; 14+ messages in thread
From: 张云峰 @ 2023-08-11  0:50 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 65198

more clear GDB info:

Thread 1 "emacs" received signal SIGSEGV, Segmentation fault.
0x0000555555618c06 in produce_glyphless_glyph (it=0x7fffffff67d0,
for_no_font=for_no_font@entry=false, acronym=acronym@entry=0x0) at
xdisp.c:31791
31791 font = face->font ? face->font : FRAME_FONT (it->f);
(gdb) bt
#0  0x0000555555618c06 in produce_glyphless_glyph (it=0x7fffffff67d0,
for_no_font=for_no_font@entry=false, acronym=acronym@entry=0x0) at
xdisp.c:31791
#1  0x000055555563f321 in gui_produce_glyphs (it=0x7fffffff67d0) at
xdisp.c:32639
#2  0x00005555556232e5 in move_it_in_display_line_to
(it=it@entry=0x7fffffff67d0, to_charpos=to_charpos@entry=382,
to_x=to_x@entry=2147483647, op=op@entry=(MOVE_TO_X | MOVE_TO_POS))
    at xdisp.c:9906
#3  0x000055555562859a in move_it_to (it=0x7fffffff67d0,
to_charpos=382, to_x=<optimized out>, to_y=<optimized out>,
to_vpos=<optimized out>, op=11) at xdisp.c:10505
#4  0x000055555563d3ae in window_text_pixel_size
    (window=<optimized out>, from=<optimized out>, to=<optimized out>,
x_limit=0x1c9a, y_limit=<optimized out>, mode_lines=0x0,
ignore_line_at_end=0x0) at xdisp.c:11460
#5  0x000055555563e046 in Fwindow_text_pixel_size
(window=0x555556296d25, from=0x0, to=0x0, x_limit=0x1c9a,
y_limit=0xc32, mode_lines=0x0, ignore_line_at_end=0x0) at
xdisp.c:11634
#6  0x00007fffe7dc07a8 in
F6669742d6672616d652d746f2d6275666665722d31_fit_frame_to_buffer_1_0 ()
    at /home/zayfen/github.com/emacs/src/../native-lisp/29.1.50-24bd8136/preloaded/window-0d1b8b93-6f4eee58.eln
#7  0x00005555557650c2 in funcall_subr (subr=0x7fffe8360178,
numargs=5, args=<optimized out>) at eval.c:3049
#8  0x0000555555761d93 in Ffuncall (nargs=6, args=0x7fffffff9570) at eval.c:2995
#9  0x0000555555765a3d in eval_sub (form=<optimized out>) at eval.c:2470
#10 0x0000555555767ddd in Fprogn (body=0x0) at eval.c:436
#11 FletX (args=0x55555af1ff63) at eval.c:958
#12 0x0000555555765be8 in eval_sub (form=<optimized out>) at eval.c:2449
#13 0x0000555555766ded in Fprogn (body=0x0) at eval.c:436
#14 funcall_lambda (fun=0x55555af1fe93, nargs=3,
arg_vector=0x7fffffff9830) at eval.c:3233
#15 0x000055555576739f in apply_lambda (fun=<optimized out>,
args=<optimized out>, count=...) at eval.c:3103
#16 0x000055555576550b in eval_sub (form=<optimized out>) at eval.c:2588
#17 0x0000555555767ddd in Fprogn (body=0x555559f14b83) at eval.c:436
#18 FletX (args=0x555559f15073) at eval.c:958
#19 0x0000555555765be8 in eval_sub (form=<optimized out>) at eval.c:2449
#20 0x0000555555766ded in Fprogn (body=0x0) at eval.c:436
#21 funcall_lambda (fun=0x555559f13a93, nargs=0,
arg_vector=0x7fffffff9b40) at eval.c:3233
--Type <RET> for more, q to quit, c to continue without paging--
#22 0x000055555576739f in apply_lambda (fun=<optimized out>,
args=<optimized out>, count=...) at eval.c:3103
#23 0x000055555576550b in eval_sub (form=<optimized out>) at eval.c:2588
#24 0x00005555557679c5 in Fprogn (body=0x0) at eval.c:436
#25 Flet (args=<optimized out>) at eval.c:1026
#26 0x0000555555765be8 in eval_sub (form=<optimized out>) at eval.c:2449
#27 0x0000555555765be8 in eval_sub (form=<optimized out>) at eval.c:2449
#28 0x0000555555767ddd in Fprogn (body=0x0) at eval.c:436
#29 FletX (args=0x555559f15d73) at eval.c:958
#30 0x0000555555765be8 in eval_sub (form=<optimized out>) at eval.c:2449
#31 0x0000555555765f4d in Fprogn (body=0x0) at eval.c:436
#32 0x0000555555765be8 in eval_sub (form=<optimized out>) at eval.c:2449
#33 0x0000555555765be8 in eval_sub (form=<optimized out>) at eval.c:2449
#34 0x0000555555766ded in Fprogn (body=0x0) at eval.c:436
#35 funcall_lambda (fun=0x555559f15b63, nargs=1,
arg_vector=0x7fffffffa1e0) at eval.c:3233
#36 0x000055555576739f in apply_lambda (fun=<optimized out>,
args=<optimized out>, count=...) at eval.c:3103
#37 0x000055555576550b in eval_sub (form=<optimized out>) at eval.c:2588
#38 0x0000555555765be8 in eval_sub (form=<optimized out>) at eval.c:2449
#39 0x0000555555765f4d in Fprogn (body=0x0) at eval.c:436
#40 0x0000555555765be8 in eval_sub (form=<optimized out>) at eval.c:2449
#41 0x0000555555765be8 in eval_sub (form=<optimized out>) at eval.c:2449
#42 0x0000555555767ddd in Fprogn (body=0x0) at eval.c:436
#43 FletX (args=0x55555aa10d93) at eval.c:958
#44 0x0000555555765be8 in eval_sub (form=<optimized out>) at eval.c:2449
#45 0x0000555555765f4d in Fprogn (body=0x0, body@entry=0x55555aa10d63)
at eval.c:436
#46 0x0000555555751d6c in Fsave_current_buffer (args=0x55555aa10d63)
at editfns.c:874
#47 0x0000555555765be8 in eval_sub (form=<optimized out>) at eval.c:2449
#48 0x0000555555765be8 in eval_sub (form=<optimized out>) at eval.c:2449
#49 0x0000555555767ddd in Fprogn (body=0x0) at eval.c:436
#50 FletX (args=0x55555aa10ce3) at eval.c:958
#51 0x0000555555765be8 in eval_sub (form=<optimized out>) at eval.c:2449
#52 0x0000555555767ddd in Fprogn (body=0x0) at eval.c:436
#53 FletX (args=0x55555aa10cb3) at eval.c:958
#54 0x0000555555765be8 in eval_sub (form=<optimized out>) at eval.c:2449
#55 0x0000555555766ded in Fprogn (body=0x0) at eval.c:436
#56 funcall_lambda (fun=0x55555aa10b93, nargs=2,
arg_vector=0x7fffffffab80) at eval.c:3233
#57 0x000055555576739f in apply_lambda (fun=<optimized out>,
args=<optimized out>, count=...) at eval.c:3103
#58 0x000055555576550b in eval_sub (form=<optimized out>) at eval.c:2588
#59 0x00005555557685cb in Feval (form=0x5555591dcf83,
lexical=<optimized out>) at eval.c:2361
#60 0x0000555555765d23 in eval_sub (form=<optimized out>) at eval.c:2501
#61 0x0000555555766ded in Fprogn (body=0x55555a5f1ee3) at eval.c:436
#62 funcall_lambda (fun=0x55555a5f1a73, nargs=1,
arg_vector=0x7fffffffaed8) at eval.c:3233
#63 0x0000555555761d93 in Ffuncall (nargs=2, args=0x7fffffffaed0) at eval.c:2995
#64 0x0000555555762282 in Fapply (nargs=2, args=0x7fffffffaed0) at eval.c:2623
#65 0x0000555555765a3d in eval_sub (form=<optimized out>) at eval.c:2470
#66 0x0000555555767c26 in FletX (args=0x55555bdb6543) at
/home/zayfen/github.com/emacs/src/lisp.h:1529
#67 0x0000555555765be8 in eval_sub (form=<optimized out>) at eval.c:2449
#68 0x0000555555768379 in internal_lisp_condition_case (var=<optimized
out>, bodyform=<optimized out>, handlers=<optimized out>) at
eval.c:1428
#69 0x0000555555765be8 in eval_sub (form=<optimized out>) at eval.c:2449
#70 0x000055555576688d in Fprogn (body=0x0) at eval.c:436
#71 Fcond (args=<optimized out>) at eval.c:416
#72 0x0000555555765be8 in eval_sub (form=<optimized out>) at eval.c:2449

张云峰 <zhangyunfeng0101@gmail.com> 于2023年8月11日周五 08:15写道:
>
> I've tested this patch, unfortunately, it doesn't work, still crashes
>
> GDB information:
> Thread 1 "emacs" received signal SIGSEGV, Segmentation fault.
> 0x0000555555619516 in produce_glyphless_glyph ()
> (gdb) bt
> #0  0x0000555555619516 in produce_glyphless_glyph ()
> #1  0x0000555555640789 in gui_produce_glyphs ()
> #2  0x0000555555623f70 in move_it_in_display_line_to ()
> #3  0x000055555562935a in move_it_to ()
> #4  0x000055555563e84f in window_text_pixel_size ()
> #5  0x000055555563f526 in Fwindow_text_pixel_size ()
> #6  0x00007fffe7dc07a8 in
> F6669742d6672616d652d746f2d6275666665722d31_fit_frame_to_buffer_1_0 ()
>     at /home/zayfen/github.com/emacs/src/../native-lisp/29.1.50-9e9f496f/preloaded/window-0d1b8b93-6f4eee58.eln
> #7  0x000055555576a032 in funcall_subr ()
> #8  0x0000555555766ba1 in Ffuncall ()
> #9  0x000055555576aa04 in eval_sub ()
> #10 0x000055555576ce6d in FletX ()
> #11 0x000055555576aba7 in eval_sub ()
> #12 0x000055555576be0d in funcall_lambda ()
> #13 0x000055555576c3ee in apply_lambda ()
> #14 0x000055555576a49b in eval_sub ()
> #15 0x000055555576ce6d in FletX ()
> #16 0x000055555576aba7 in eval_sub ()
> #17 0x000055555576be0d in funcall_lambda ()
> #18 0x000055555576c3ee in apply_lambda ()
> #19 0x000055555576a49b in eval_sub ()
> #20 0x000055555576ca2d in Flet ()
> #21 0x000055555576aba7 in eval_sub ()
> #22 0x000055555576aba7 in eval_sub ()
> #23 0x000055555576ce6d in FletX ()
> #24 0x000055555576aba7 in eval_sub ()
> #25 0x000055555576af0d in Fprogn ()
> #26 0x000055555576aba7 in eval_sub ()
> #27 0x000055555576aba7 in eval_sub ()
> #28 0x000055555576be0d in funcall_lambda ()
> #29 0x000055555576c3ee in apply_lambda ()
> #30 0x000055555576a49b in eval_sub ()
> #31 0x000055555576aba7 in eval_sub ()
> #32 0x000055555576af0d in Fprogn ()
> #33 0x000055555576aba7 in eval_sub ()
> #34 0x000055555576aba7 in eval_sub ()
> #35 0x000055555576ce6d in FletX ()
> #36 0x000055555576aba7 in eval_sub ()
> #37 0x000055555576af0d in Fprogn ()
> #38 0x000055555575666c in Fsave_current_buffer ()
> #39 0x000055555576aba7 in eval_sub ()
> #40 0x000055555576aba7 in eval_sub ()
> #41 0x000055555576ce6d in FletX ()
> #42 0x000055555576aba7 in eval_sub ()
> #43 0x000055555576ce6d in FletX ()
> #44 0x000055555576aba7 in eval_sub ()
> #45 0x000055555576be0d in funcall_lambda ()
> #46 0x000055555576c3ee in apply_lambda ()
> #47 0x000055555576a49b in eval_sub ()
> #48 0x000055555576d66b in Feval ()
> #49 0x000055555576ace1 in eval_sub ()
>
> Eli Zaretskii <eliz@gnu.org> 于2023年8月11日周五 02:36写道:
> >
> > > From: 张云峰 <zhangyunfeng0101@gmail.com>
> > > Date: Fri, 11 Aug 2023 01:58:34 +0800
> > > Cc: 65198@debbugs.gnu.org
> > >
> > > 2023-08-11_01-53.png
> > > when popup frame has the warning-icon (marked in picture) , emacs will crash immediately.
> >
> > Can you try the patch below and see if it prevents the crash in these
> > cases?
> >
> > diff --git a/src/xdisp.c b/src/xdisp.c
> > index 9cddcfe..b25bdc7 100644
> > --- a/src/xdisp.c
> > +++ b/src/xdisp.c
> > @@ -8312,9 +8312,14 @@ get_next_display_element (struct it *it)
> >        && success_p
> >        && FRAME_WINDOW_P (it->f))
> >      {
> > -      struct face *face = FACE_FROM_ID (it->f, it->face_id);
> > +      struct face *face = FACE_FROM_ID_OR_NULL (it->f, it->face_id);
> >
> > -      if (it->what == IT_COMPOSITION && it->cmp_it.ch >= 0)
> > +      if (!face)
> > +       {
> > +         it->what = IT_GLYPHLESS;
> > +         it->glyphless_method = GLYPHLESS_DISPLAY_EMPTY_BOX;
> > +       }
> > +      else if (it->what == IT_COMPOSITION && it->cmp_it.ch >= 0)
> >         {
> >           /* Automatic composition with glyph-string.   */
> >           Lisp_Object gstring = composition_gstring_from_id (it->cmp_it.id);





^ permalink raw reply	[flat|nested] 14+ messages in thread

* bug#65198: 29.1; Emacs29.1 crash in function face_for_font
  2023-08-11  0:50             ` 张云峰
@ 2023-08-11  6:12               ` Eli Zaretskii
  2023-08-11 14:21                 ` 张云峰
  0 siblings, 1 reply; 14+ messages in thread
From: Eli Zaretskii @ 2023-08-11  6:12 UTC (permalink / raw)
  To: 张云峰; +Cc: 65198

> From: 张云峰 <zhangyunfeng0101@gmail.com>
> Date: Fri, 11 Aug 2023 08:50:04 +0800
> Cc: 65198@debbugs.gnu.org
> 
> more clear GDB info:
> 
> Thread 1 "emacs" received signal SIGSEGV, Segmentation fault.
> 0x0000555555618c06 in produce_glyphless_glyph (it=0x7fffffff67d0,
> for_no_font=for_no_font@entry=false, acronym=acronym@entry=0x0) at
> xdisp.c:31791
> 31791 font = face->font ? face->font : FRAME_FONT (it->f);

Actually, this is progress: we are now crashing a bit later, while
trying to display an empty box instead of a character that has no font
and no suitable face.  To resolve this, please help me by providing
the results of the following GDB commands after Emacs crashes and GDB
kicks in:

 (gdb) p it->face_id
 (gdb) p it->c
 (gdb) p FRAME_FONT(it->f)
 (gdb) p (it->f)->output_data.x->font

Thanks.





^ permalink raw reply	[flat|nested] 14+ messages in thread

* bug#65198: 29.1; Emacs29.1 crash in function face_for_font
  2023-08-11  6:12               ` Eli Zaretskii
@ 2023-08-11 14:21                 ` 张云峰
  2023-08-11 14:55                   ` 张云峰
  2023-08-11 15:24                   ` Eli Zaretskii
  0 siblings, 2 replies; 14+ messages in thread
From: 张云峰 @ 2023-08-11 14:21 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 65198

Thread 1 "emacs" received signal SIGSEGV, Segmentation fault.
0x0000555555616206 in produce_glyphless_glyph (it=0x7fffffff6cc0,
for_no_font=for_no_font@entry=false, acronym=acronym@entry=0x0) at
xdisp.c:31791
31791 font = face->font ? face->font : FRAME_FONT (it->f);
(gdb) p it->face_id
$1 = 0
(gdb) p it->c
$2 = 9888
(gdb) p FRAME_FONT(it->f)
No symbol "FRAME_FONT" in current context.
(gdb) p (it->f)->output_data.x->font
There is no member named font.
(gdb) p face
Cannot access memory at address 0x120
(gdb) p FACE_FROM_ID (it->f, it->face_id)->ascii_face
No symbol "FACE_FROM_ID" in current context.
(gdb) p it->what
$3 = IT_GLYPHLESS

Eli Zaretskii <eliz@gnu.org> 于2023年8月11日周五 14:12写道:
>
> > From: 张云峰 <zhangyunfeng0101@gmail.com>
> > Date: Fri, 11 Aug 2023 08:50:04 +0800
> > Cc: 65198@debbugs.gnu.org
> >
> > more clear GDB info:
> >
> > Thread 1 "emacs" received signal SIGSEGV, Segmentation fault.
> > 0x0000555555618c06 in produce_glyphless_glyph (it=0x7fffffff67d0,
> > for_no_font=for_no_font@entry=false, acronym=acronym@entry=0x0) at
> > xdisp.c:31791
> > 31791 font = face->font ? face->font : FRAME_FONT (it->f);
>
> Actually, this is progress: we are now crashing a bit later, while
> trying to display an empty box instead of a character that has no font
> and no suitable face.  To resolve this, please help me by providing
> the results of the following GDB commands after Emacs crashes and GDB
> kicks in:
>
>  (gdb) p it->face_id
>  (gdb) p it->c
>  (gdb) p FRAME_FONT(it->f)
>  (gdb) p (it->f)->output_data.x->font
>
> Thanks.





^ permalink raw reply	[flat|nested] 14+ messages in thread

* bug#65198: 29.1; Emacs29.1 crash in function face_for_font
  2023-08-11 14:21                 ` 张云峰
@ 2023-08-11 14:55                   ` 张云峰
  2023-08-11 15:30                     ` Eli Zaretskii
  2023-08-11 15:24                   ` Eli Zaretskii
  1 sibling, 1 reply; 14+ messages in thread
From: 张云峰 @ 2023-08-11 14:55 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 65198

(compile emacs without  pgtk)

(gdb) p it->face_id
$13 = 0
(gdb) p it->c
$14 = 9888
(gdb) p FRAME_FONT(it->f)
No symbol "FRAME_FONT" in current context.
(gdb) p it->f
$15 = (struct frame *) 0x5555586492e0
(gdb) p (it->f)->output_data.x->font
$16 = (struct font *) 0x555558ca8c18
(gdb) p (it->f)->output_data.x->font->
ascent               default_ascent       encoding_charset
max_width            props                space_width
vertical_centering
average_width        descent              header
min_width            relative_compose     underline_position
baseline_offset      driver               height
pixel_size           repertory_charset    underline_thickness
(gdb) p (it->f)->output_data.x->font->encoding_charset
$17 = -1
(gdb) p (it->f)->output_data.x->font->driver
$18 = (const struct font_driver *) 0x555555e04fe0 <ftcrhbfont_driver>
(gdb) p (it->f)->output_data.x->font->ascent
$19 = 27
(gdb) p (it->f)->output_data.x->font->pixel-size
No symbol "size" in current context.
(gdb) p (it->f)->output_data.x->font->pixel_size
$20 = 24
(gdb) p (it->f)->output_data.x->font->props
$21 = {0x7ef0, 0x26eef30, 0x26eef60, 0x0, 0x9bd0, 0x14102, 0x19082,
0x19102, 0x62, 0x0, 0x192, 0x2, 0x555557cfa953, 0x0, 0x555558e5d854,
0x555558e5d874, 0x555558ca1884}
(gdb) p (it->f)->output_data.x->font->relative_compose
$22 = 0
(gdb) p (it->f)->output_data.x->font->repertory_charset
$23 = -1
(gdb)

张云峰 <zhangyunfeng0101@gmail.com> 于2023年8月11日周五 22:21写道:
>
> Thread 1 "emacs" received signal SIGSEGV, Segmentation fault.
> 0x0000555555616206 in produce_glyphless_glyph (it=0x7fffffff6cc0,
> for_no_font=for_no_font@entry=false, acronym=acronym@entry=0x0) at
> xdisp.c:31791
> 31791 font = face->font ? face->font : FRAME_FONT (it->f);
> (gdb) p it->face_id
> $1 = 0
> (gdb) p it->c
> $2 = 9888
> (gdb) p FRAME_FONT(it->f)
> No symbol "FRAME_FONT" in current context.
> (gdb) p (it->f)->output_data.x->font
> There is no member named font.
> (gdb) p face
> Cannot access memory at address 0x120
> (gdb) p FACE_FROM_ID (it->f, it->face_id)->ascii_face
> No symbol "FACE_FROM_ID" in current context.
> (gdb) p it->what
> $3 = IT_GLYPHLESS
>
> Eli Zaretskii <eliz@gnu.org> 于2023年8月11日周五 14:12写道:
> >
> > > From: 张云峰 <zhangyunfeng0101@gmail.com>
> > > Date: Fri, 11 Aug 2023 08:50:04 +0800
> > > Cc: 65198@debbugs.gnu.org
> > >
> > > more clear GDB info:
> > >
> > > Thread 1 "emacs" received signal SIGSEGV, Segmentation fault.
> > > 0x0000555555618c06 in produce_glyphless_glyph (it=0x7fffffff67d0,
> > > for_no_font=for_no_font@entry=false, acronym=acronym@entry=0x0) at
> > > xdisp.c:31791
> > > 31791 font = face->font ? face->font : FRAME_FONT (it->f);
> >
> > Actually, this is progress: we are now crashing a bit later, while
> > trying to display an empty box instead of a character that has no font
> > and no suitable face.  To resolve this, please help me by providing
> > the results of the following GDB commands after Emacs crashes and GDB
> > kicks in:
> >
> >  (gdb) p it->face_id
> >  (gdb) p it->c
> >  (gdb) p FRAME_FONT(it->f)
> >  (gdb) p (it->f)->output_data.x->font
> >
> > Thanks.





^ permalink raw reply	[flat|nested] 14+ messages in thread

* bug#65198: 29.1; Emacs29.1 crash in function face_for_font
  2023-08-11 14:21                 ` 张云峰
  2023-08-11 14:55                   ` 张云峰
@ 2023-08-11 15:24                   ` Eli Zaretskii
  1 sibling, 0 replies; 14+ messages in thread
From: Eli Zaretskii @ 2023-08-11 15:24 UTC (permalink / raw)
  To: 张云峰; +Cc: 65198

> From: 张云峰 <zhangyunfeng0101@gmail.com>
> Date: Fri, 11 Aug 2023 22:21:11 +0800
> Cc: 65198@debbugs.gnu.org
> 
> Thread 1 "emacs" received signal SIGSEGV, Segmentation fault.
> 0x0000555555616206 in produce_glyphless_glyph (it=0x7fffffff6cc0,
> for_no_font=for_no_font@entry=false, acronym=acronym@entry=0x0) at
> xdisp.c:31791
> 31791 font = face->font ? face->font : FRAME_FONT (it->f);
> (gdb) p it->face_id
> $1 = 0
> (gdb) p it->c
> $2 = 9888
> (gdb) p FRAME_FONT(it->f)
> No symbol "FRAME_FONT" in current context.
> (gdb) p (it->f)->output_data.x->font

Since it turns out this is a PGTK build, please show this instead:

  (gdb) p (it->f)->output_data.pgtk->font





^ permalink raw reply	[flat|nested] 14+ messages in thread

* bug#65198: 29.1; Emacs29.1 crash in function face_for_font
  2023-08-11 14:55                   ` 张云峰
@ 2023-08-11 15:30                     ` Eli Zaretskii
  2023-08-11 16:14                       ` 张云峰
  0 siblings, 1 reply; 14+ messages in thread
From: Eli Zaretskii @ 2023-08-11 15:30 UTC (permalink / raw)
  To: 张云峰; +Cc: 65198

> From: 张云峰 <zhangyunfeng0101@gmail.com>
> Date: Fri, 11 Aug 2023 22:55:29 +0800
> Cc: 65198@debbugs.gnu.org
> 
> (compile emacs without  pgtk)
> 
> (gdb) p it->face_id
> $13 = 0
> (gdb) p it->c
> $14 = 9888
> (gdb) p FRAME_FONT(it->f)
> No symbol "FRAME_FONT" in current context.
> (gdb) p it->f
> $15 = (struct frame *) 0x5555586492e0
> (gdb) p (it->f)->output_data.x->font
> $16 = (struct font *) 0x555558ca8c18

OK.  A new patch (which includes the previous one, so please apply to
the original code):

diff --git a/src/xdisp.c b/src/xdisp.c
index 9cddcfe..830b622 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -8312,9 +8312,14 @@ get_next_display_element (struct it *it)
       && success_p
       && FRAME_WINDOW_P (it->f))
     {
-      struct face *face = FACE_FROM_ID (it->f, it->face_id);
+      struct face *face = FACE_FROM_ID_OR_NULL (it->f, it->face_id);
 
-      if (it->what == IT_COMPOSITION && it->cmp_it.ch >= 0)
+      if (!face)
+	{
+	  it->what = IT_GLYPHLESS;
+	  it->glyphless_method = GLYPHLESS_DISPLAY_EMPTY_BOX;
+	}
+      else if (it->what == IT_COMPOSITION && it->cmp_it.ch >= 0)
 	{
 	  /* Automatic composition with glyph-string.   */
 	  Lisp_Object gstring = composition_gstring_from_id (it->cmp_it.id);
@@ -31782,8 +31787,8 @@ produce_glyphless_glyph (struct it *it, bool for_no_font, Lisp_Object acronym)
 
   /* Get the metrics of the base font.  We always refer to the current
      ASCII face.  */
-  face = FACE_FROM_ID (it->f, it->face_id)->ascii_face;
-  font = face->font ? face->font : FRAME_FONT (it->f);
+  face = FACE_FROM_ID_OR_NULL (it->f, it->face_id)->ascii_face;
+  font = (face && face->font) ? face->font : FRAME_FONT (it->f);
   normal_char_ascent_descent (font, -1, &it->ascent, &it->descent);
   it->ascent += font->baseline_offset;
   it->descent -= font->baseline_offset;





^ permalink raw reply related	[flat|nested] 14+ messages in thread

* bug#65198: 29.1; Emacs29.1 crash in function face_for_font
  2023-08-11 15:30                     ` Eli Zaretskii
@ 2023-08-11 16:14                       ` 张云峰
  2023-08-12  6:39                         ` Eli Zaretskii
  0 siblings, 1 reply; 14+ messages in thread
From: 张云峰 @ 2023-08-11 16:14 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 65198

[-- Attachment #1: Type: text/plain, Size: 1561 bytes --]

I made a little modification to this patch, and after verification, emacs
does not crash anymore, thanks!😊

diff --git a/src/xdisp.c b/src/xdisp.c
index 9cddcfe..830b622 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -8312,9 +8312,14 @@ get_next_display_element (struct it *it)
       && success_p
       && FRAME_WINDOW_P (it->f))
     {
-      struct face *face = FACE_FROM_ID (it->f, it->face_id);
+      struct face *face = FACE_FROM_ID_OR_NULL (it->f, it->face_id);

-      if (it->what == IT_COMPOSITION && it->cmp_it.ch >= 0)
+      if (!face)
+       {
+         it->what = IT_GLYPHLESS;
+         it->glyphless_method = GLYPHLESS_DISPLAY_EMPTY_BOX;
+       }
+      else if (it->what == IT_COMPOSITION && it->cmp_it.ch >= 0)
        {
          /* Automatic composition with glyph-string.   */
          Lisp_Object gstring = composition_gstring_from_id (it->cmp_it.id);
@@ -31782,8 +31787,8 @@ produce_glyphless_glyph (struct it *it, bool
for_no_font, Lisp_Object acronym)

   /* Get the metrics of the base font.  We always refer to the current
      ASCII face.  */
-  face = FACE_FROM_ID (it->f, it->face_id)->ascii_face;
-  font = face->font ? face->font : FRAME_FONT (it->f);
+  face = FACE_FROM_ID_OR_NULL (it->f, it->face_id);
+   if (face)
+   {
+      face = face->ascii_face;
+    }
+  font = (face && face->font) ? face->font : FRAME_FONT (it->f);
   normal_char_ascent_descent (font, -1, &it->ascent, &it->descent);
   it->ascent += font->baseline_offset;
   it->descent -= font->baseline_offset;

[-- Attachment #2: Type: text/html, Size: 2165 bytes --]

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* bug#65198: 29.1; Emacs29.1 crash in function face_for_font
  2023-08-11 16:14                       ` 张云峰
@ 2023-08-12  6:39                         ` Eli Zaretskii
  0 siblings, 0 replies; 14+ messages in thread
From: Eli Zaretskii @ 2023-08-12  6:39 UTC (permalink / raw)
  To: 张云峰; +Cc: 65198-done

> From: 张云峰 <zhangyunfeng0101@gmail.com>
> Date: Sat, 12 Aug 2023 00:14:01 +0800
> Cc: 65198@debbugs.gnu.org
> 
> I made a little modification to this patch, and after verification, emacs does not crash anymore,
> thanks!😊

Thanks, now installed on the emacs-29 branch, and closing the bug.





^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2023-08-12  6:39 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-08-10  9:57 bug#65198: 29.1; Emacs29.1 crash in function face_for_font 张云峰
2023-08-10 10:06 ` Eli Zaretskii
     [not found]   ` <CA+cG9GxATqwi7-aFEvma0zi3AZM5y6eshU510oPFohuKwhHF4w@mail.gmail.com>
2023-08-10 17:22     ` Eli Zaretskii
2023-08-10 17:58       ` 张云峰
2023-08-10 18:36         ` Eli Zaretskii
2023-08-11  0:15           ` 张云峰
2023-08-11  0:50             ` 张云峰
2023-08-11  6:12               ` Eli Zaretskii
2023-08-11 14:21                 ` 张云峰
2023-08-11 14:55                   ` 张云峰
2023-08-11 15:30                     ` Eli Zaretskii
2023-08-11 16:14                       ` 张云峰
2023-08-12  6:39                         ` Eli Zaretskii
2023-08-11 15:24                   ` Eli Zaretskii

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.