GNU bug report logs -
#65198
29.1; Emacs29.1 crash in function face_for_font
Previous Next
Reported by: 张云峰 <zhangyunfeng0101 <at> gmail.com>
Date: Thu, 10 Aug 2023 09:58:02 UTC
Severity: normal
Found in version 29.1
Done: Eli Zaretskii <eliz <at> gnu.org>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
> From: 张云峰 <zhangyunfeng0101 <at> gmail.com>
> Date: Fri, 11 Aug 2023 01:58:34 +0800
> Cc: 65198 <at> 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);
This bug report was last modified 1 year and 343 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.