GNU bug report logs - #75725
SIGSEGV in emacs 30.0.93

Previous Next

Package: emacs;

Reported by: Florian Franzmann <bwlf <at> bandrate.org>

Date: Tue, 21 Jan 2025 08:37:02 UTC

Severity: normal

To reply to this bug, email your comments to 75725 AT debbugs.gnu.org.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#75725; Package emacs. (Tue, 21 Jan 2025 08:37:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Florian Franzmann <bwlf <at> bandrate.org>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Tue, 21 Jan 2025 08:37:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Florian Franzmann <bwlf <at> bandrate.org>
To: bug-gnu-emacs <at> gnu.org
Subject: SIGSEGV in emacs 30.0.93
Date: Tue, 21 Jan 2025 09:15:30 +0100
Hi,

I'm experiencing a segmentation violation in emacs 30.0.93 when linked against GTK.
The crash does not happen in the TUI version of emacs (which, obviously, is not
linked against GTK).

Backtrace:

#0  normal_char_ascent_descent (font=0x0, c=c <at> entry=-1, ascent=ascent <at> entry=0x7fffffff2ad0, descent=descent <at> entry=0x7fffffff2ad4)
    at xdisp.c:30407
#1  0x000000000043b18b in normal_char_height (font=<optimized out>, c=c <at> entry=-1) at xdisp.c:30443
#2  0x0000000000455cdf in handle_single_display_spec (it=it <at> entry=0x7fffffff3150, spec=<optimized out>, spec <at> entry=0x28266e3,
    object=<optimized out>, object <at> entry=0x28dc604, overlay=overlay <at> entry=0x0, position=position <at> entry=0x7fffffff32b8,
    bufpos=bufpos <at> entry=0, display_replaced=0, frame_window_p=true, enable_eval_p=true) at xdisp.c:6114
#3  0x00000000004567de in handle_display_spec (it=it <at> entry=0x7fffffff3150, spec=<optimized out>, spec <at> entry=0x28266e3,
    object=object <at> entry=0x28dc604, overlay=0x0, position=position <at> entry=0x7fffffff32b8, bufpos=bufpos <at> entry=0, frame_window_p=true)
    at xdisp.c:5862
#4  0x0000000000456e95 in handle_display_prop (it=0x7fffffff3150) at xdisp.c:5770
#5  0x0000000000451357 in handle_stop (it=it <at> entry=0x7fffffff3150) at xdisp.c:4136
#6  0x0000000000452678 in next_element_from_string (it=0x7fffffff3150) at xdisp.c:9257
#7  0x00000000004585bc in get_next_display_element (it=it <at> entry=0x7fffffff3150) at xdisp.c:8210
#8  0x0000000000467458 in display_string (string=string <at> entry=0x0, lisp_string=lisp_string <at> entry=0x28dc604,
    face_string=face_string <at> entry=0x0, face_string_pos=face_string_pos <at> entry=0, start=start <at> entry=0, it=it <at> entry=0x7fffffff3150,
    field_width=<optimized out>, precision=<optimized out>, max_x=<optimized out>, multibyte=<optimized out>) at xdisp.c:29218
#9  0x0000000000467b62 in display_mode_element (it=it <at> entry=0x7fffffff3150, depth=6, depth <at> entry=5, field_width=0, precision=-79,
    elt=0x28dc604, props=props <at> entry=0x0, risky=false) at xdisp.c:27755
#10 0x00000000004681b5 in display_mode_element (it=it <at> entry=0x7fffffff3150, depth=5, depth <at> entry=3, field_width=0, precision=-77,
    elt=<optimized out>, props=props <at> entry=0x0, risky=false) at xdisp.c:28003
#11 0x00000000004681b5 in display_mode_element (it=it <at> entry=0x7fffffff3150, depth=3, depth <at> entry=1, field_width=-59, precision=-59,
    elt=<optimized out>, props=props <at> entry=0x0, risky=false) at xdisp.c:28003
#12 0x00000000004681b5 in display_mode_element (it=it <at> entry=0x7fffffff3150, depth=1, depth <at> entry=0, field_width=field_width <at> entry=0,
    precision=precision <at> entry=0, elt=<optimized out>, elt <at> entry=0x3cdb883, props=props <at> entry=0x0, risky=false) at xdisp.c:28003
#13 0x0000000000468ffe in display_mode_line (w=w <at> entry=0x1437d88, face_id=MODE_LINE_ACTIVE_FACE_ID, format=0x3cdb883) at xdisp.c:27428
#14 0x000000000046aeac in display_mode_lines (w=w <at> entry=0x1437d88) at xdisp.c:27341
#15 0x000000000047b6c2 in redisplay_window (window=0x1437d8d, just_this_one_p=just_this_one_p <at> entry=false) at xdisp.c:20931
#16 0x000000000047d00f in redisplay_window_0 (window=window <at> entry=0x1437d8d) at xdisp.c:18020
#17 0x00000000005a5369 in internal_condition_case_1 (bfun=bfun <at> entry=0x47cfd8 <redisplay_window_0>, arg=0x1437d8d,
    handlers=<optimized out>, hfun=hfun <at> entry=0x43ea8b <redisplay_window_error>) at eval.c:1637
#18 0x0000000000443646 in redisplay_windows (window=0x1437d8d) at xdisp.c:17989
#19 0x00000000004435ca in redisplay_windows (window=0xf41c935) at xdisp.c:17983
#20 0x000000000046c497 in redisplay_internal () at xdisp.c:17388
#21 0x000000000046cd2d in resize_echo_area_exactly () at xdisp.c:12909
#22 0x00000000005393a6 in command_loop_1 () at keyboard.c:1578
#23 0x00000000005a52e5 in internal_condition_case (bfun=bfun <at> entry=0x538bee <command_loop_1>, handlers=handlers <at> entry=0x90,
    hfun=hfun <at> entry=0x52d63b <cmd_error>) at eval.c:1613
#24 0x00000000005275ee in command_loop_2 (handlers=handlers <at> entry=0x90) at keyboard.c:1168
#25 0x00000000005a5202 in internal_catch (tag=tag <at> entry=0x122d0, func=func <at> entry=0x5275d4 <command_loop_2>, arg=arg <at> entry=0x90)
    at eval.c:1292
#26 0x00000000005275ab in command_loop () at keyboard.c:1146
#27 0x000000000052d194 in recursive_edit_1 () at keyboard.c:754
#28 0x000000000052d53c in Frecursive_edit () at keyboard.c:837
#29 0x00000000005269a0 in main (argc=<optimized out>, argv=0x7fffffff8588) at emacs.c:2635

The problem seems to be that xdisp.c:30407 invokes FONT_BASE on the font pointer
(which is a NULL pointer). I do not know why it would be NULL or if
normal_char_ascent_descent should check for NULL or if that should be caught
somewhere higher up in the call hierarchy. I can reproduce the behavior by
loading my previous session via doomemacs' doom-load-session but I do not have
a minimal test case that provokes this crash.

best regards
Florian

-- 




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#75725; Package emacs. (Tue, 21 Jan 2025 12:32:02 GMT) Full text and rfc822 format available.

Message #8 received at 75725 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Florian Franzmann <bwlf <at> bandrate.org>
Cc: 75725 <at> debbugs.gnu.org
Subject: Re: bug#75725: SIGSEGV in emacs 30.0.93
Date: Tue, 21 Jan 2025 14:31:00 +0200
> Date: Tue, 21 Jan 2025 09:15:30 +0100
> From: Florian Franzmann <bwlf <at> bandrate.org>
> 
> I'm experiencing a segmentation violation in emacs 30.0.93 when linked against GTK.
> The crash does not happen in the TUI version of emacs (which, obviously, is not
> linked against GTK).
> 
> Backtrace:
> 
> #0  normal_char_ascent_descent (font=0x0, c=c <at> entry=-1, ascent=ascent <at> entry=0x7fffffff2ad0, descent=descent <at> entry=0x7fffffff2ad4)
>     at xdisp.c:30407
> #1  0x000000000043b18b in normal_char_height (font=<optimized out>, c=c <at> entry=-1) at xdisp.c:30443
> #2  0x0000000000455cdf in handle_single_display_spec (it=it <at> entry=0x7fffffff3150, spec=<optimized out>, spec <at> entry=0x28266e3,
>     object=<optimized out>, object <at> entry=0x28dc604, overlay=overlay <at> entry=0x0, position=position <at> entry=0x7fffffff32b8,
>     bufpos=bufpos <at> entry=0, display_replaced=0, frame_window_p=true, enable_eval_p=true) at xdisp.c:6114
> #3  0x00000000004567de in handle_display_spec (it=it <at> entry=0x7fffffff3150, spec=<optimized out>, spec <at> entry=0x28266e3,
>     object=object <at> entry=0x28dc604, overlay=0x0, position=position <at> entry=0x7fffffff32b8, bufpos=bufpos <at> entry=0, frame_window_p=true)
>     at xdisp.c:5862

Thanks, I installed a trivial fix.  You may not like the results, but
at least Emacs should not crash.

I'm guessing the actual reason for this is that you have some
problematic setup of fonts, which causes some character on the mode
line to have no font for some reason.  So if loading the session which
previously crashed produces some weird display on the mode line, try
looking at your font/fontset setup to solve this.

(Of course, if Emacs still crashes after you update from Git or patch
it with the patch below, please report the backtrace from the crash,
maybe I missed something.)

Here's the patch which I installed on the emacs-30 branch:

diff --git a/src/xdisp.c b/src/xdisp.c
index 19ce5b7..f11a8aa 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -6111,7 +6111,9 @@ handle_single_display_spec (struct it *it, Lisp_Object spec, Lisp_Object object,
 	    {
 	      struct face *face = FACE_FROM_ID (it->f, it->face_id);
 	      it->voffset = - (XFLOATINT (value)
-			       * (normal_char_height (face->font, -1)));
+			       * (face->font
+				  ? normal_char_height (face->font, -1)
+				  : FRAME_LINE_HEIGHT (it->f)));
 	    }
 #endif /* HAVE_WINDOW_SYSTEM */
 	}
@@ -32056,7 +32058,8 @@ produce_stretch_glyph (struct it *it)
   /* Compute height.  */
   if (FRAME_WINDOW_P (it->f))
     {
-      int default_height = normal_char_height (font, ' ');
+      int default_height =
+	font ? normal_char_height (font, ' ') : FRAME_LINE_HEIGHT (it->f);
 
       if ((prop = plist_get (plist, QCheight), !NILP (prop))
 	  && calc_pixel_width_or_height (&tem, it, prop, font, false, NULL))




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#75725; Package emacs. (Tue, 21 Jan 2025 14:19:02 GMT) Full text and rfc822 format available.

Message #11 received at 75725 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Florian Franzmann <bwlf <at> bandrate.org>
Cc: 75725 <at> debbugs.gnu.org
Subject: Re: bug#75725: SIGSEGV in emacs 30.0.93
Date: Tue, 21 Jan 2025 16:18:33 +0200
> Date: Tue, 21 Jan 2025 14:13:38 +0100
> From: Florian Franzmann <bwlf <at> bandrate.org>
> Cc: 75725 <at> debbugs.gnu.org
> 
> On Di 2025-01-21 14:31:00 +0200, Eli Zaretskii wrote:
> > > Date: Tue, 21 Jan 2025 09:15:30 +0100
> > > From: Florian Franzmann <bwlf <at> bandrate.org>
> > > 
> > > I'm experiencing a segmentation violation in emacs 30.0.93 when linked against GTK.
> > > The crash does not happen in the TUI version of emacs (which, obviously, is not
> > > linked against GTK).
> > > 
> > > Backtrace:
> > > 
> > > #0  normal_char_ascent_descent (font=0x0, c=c <at> entry=-1, ascent=ascent <at> entry=0x7fffffff2ad0, descent=descent <at> entry=0x7fffffff2ad4)
> > >     at xdisp.c:30407
> > > #1  0x000000000043b18b in normal_char_height (font=<optimized out>, c=c <at> entry=-1) at xdisp.c:30443
> > > #2  0x0000000000455cdf in handle_single_display_spec (it=it <at> entry=0x7fffffff3150, spec=<optimized out>, spec <at> entry=0x28266e3,
> > >     object=<optimized out>, object <at> entry=0x28dc604, overlay=overlay <at> entry=0x0, position=position <at> entry=0x7fffffff32b8,
> > >     bufpos=bufpos <at> entry=0, display_replaced=0, frame_window_p=true, enable_eval_p=true) at xdisp.c:6114
> > > #3  0x00000000004567de in handle_display_spec (it=it <at> entry=0x7fffffff3150, spec=<optimized out>, spec <at> entry=0x28266e3,
> > >     object=object <at> entry=0x28dc604, overlay=0x0, position=position <at> entry=0x7fffffff32b8, bufpos=bufpos <at> entry=0, frame_window_p=true)
> > >     at xdisp.c:5862
> > 
> > Thanks, I installed a trivial fix.  You may not like the results, but
> > at least Emacs should not crash.
> Thanks, that fixed the crash.

Thanks for testing.  Does the resulting display look reasonable (it's
somewhere on your mode line)?

> However, I think it would make sense to output some kind of useful
> information somewhere to help with debugging such issues. Right now
> it's just a silent error.

I don't know what to say in the message, sorry.  Saying "font is NULL"
will not be helpful for most users, I'm afraid.

Also, Emacs has similar protection against a face's font being NULL in
quite a few places.  I didn't invent any new technique.

I could try help you understand what causes this, if you can show me
your font-related customizations, in particular for what is on the
mode line.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#75725; Package emacs. (Tue, 21 Jan 2025 15:15:03 GMT) Full text and rfc822 format available.

Message #14 received at 75725 <at> debbugs.gnu.org (full text, mbox):

From: Florian Franzmann <bwlf <at> bandrate.org>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 75725 <at> debbugs.gnu.org
Subject: Re: bug#75725: SIGSEGV in emacs 30.0.93
Date: Tue, 21 Jan 2025 14:13:38 +0100
On Di 2025-01-21 14:31:00 +0200, Eli Zaretskii wrote:
> > Date: Tue, 21 Jan 2025 09:15:30 +0100
> > From: Florian Franzmann <bwlf <at> bandrate.org>
> > 
> > I'm experiencing a segmentation violation in emacs 30.0.93 when linked against GTK.
> > The crash does not happen in the TUI version of emacs (which, obviously, is not
> > linked against GTK).
> > 
> > Backtrace:
> > 
> > #0  normal_char_ascent_descent (font=0x0, c=c <at> entry=-1, ascent=ascent <at> entry=0x7fffffff2ad0, descent=descent <at> entry=0x7fffffff2ad4)
> >     at xdisp.c:30407
> > #1  0x000000000043b18b in normal_char_height (font=<optimized out>, c=c <at> entry=-1) at xdisp.c:30443
> > #2  0x0000000000455cdf in handle_single_display_spec (it=it <at> entry=0x7fffffff3150, spec=<optimized out>, spec <at> entry=0x28266e3,
> >     object=<optimized out>, object <at> entry=0x28dc604, overlay=overlay <at> entry=0x0, position=position <at> entry=0x7fffffff32b8,
> >     bufpos=bufpos <at> entry=0, display_replaced=0, frame_window_p=true, enable_eval_p=true) at xdisp.c:6114
> > #3  0x00000000004567de in handle_display_spec (it=it <at> entry=0x7fffffff3150, spec=<optimized out>, spec <at> entry=0x28266e3,
> >     object=object <at> entry=0x28dc604, overlay=0x0, position=position <at> entry=0x7fffffff32b8, bufpos=bufpos <at> entry=0, frame_window_p=true)
> >     at xdisp.c:5862
> 
> Thanks, I installed a trivial fix.  You may not like the results, but
> at least Emacs should not crash.
Thanks, that fixed the crash. However, I think it would make sense to
output some kind of useful information somewhere to help with
debugging such issues. Right now it's just a silent error.

Florian


> 
> I'm guessing the actual reason for this is that you have some
> problematic setup of fonts, which causes some character on the mode
> line to have no font for some reason.  So if loading the session which
> previously crashed produces some weird display on the mode line, try
> looking at your font/fontset setup to solve this.
> 
> (Of course, if Emacs still crashes after you update from Git or patch
> it with the patch below, please report the backtrace from the crash,
> maybe I missed something.)
> 
> Here's the patch which I installed on the emacs-30 branch:
> 
> diff --git a/src/xdisp.c b/src/xdisp.c
> index 19ce5b7..f11a8aa 100644
> --- a/src/xdisp.c
> +++ b/src/xdisp.c
> @@ -6111,7 +6111,9 @@ handle_single_display_spec (struct it *it, Lisp_Object spec, Lisp_Object object,
>  	    {
>  	      struct face *face = FACE_FROM_ID (it->f, it->face_id);
>  	      it->voffset = - (XFLOATINT (value)
> -			       * (normal_char_height (face->font, -1)));
> +			       * (face->font
> +				  ? normal_char_height (face->font, -1)
> +				  : FRAME_LINE_HEIGHT (it->f)));
>  	    }
>  #endif /* HAVE_WINDOW_SYSTEM */
>  	}
> @@ -32056,7 +32058,8 @@ produce_stretch_glyph (struct it *it)
>    /* Compute height.  */
>    if (FRAME_WINDOW_P (it->f))
>      {
> -      int default_height = normal_char_height (font, ' ');
> +      int default_height =
> +	font ? normal_char_height (font, ' ') : FRAME_LINE_HEIGHT (it->f);
>  
>        if ((prop = plist_get (plist, QCheight), !NILP (prop))
>  	  && calc_pixel_width_or_height (&tem, it, prop, font, false, NULL))

-- 




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#75725; Package emacs. (Tue, 21 Jan 2025 17:21:02 GMT) Full text and rfc822 format available.

Message #17 received at 75725 <at> debbugs.gnu.org (full text, mbox):

From: Florian Franzmann <bwlf <at> bandrate.org>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 75725 <at> debbugs.gnu.org
Subject: Re: bug#75725: SIGSEGV in emacs 30.0.93
Date: Tue, 21 Jan 2025 18:20:05 +0100
On Di 2025-01-21 16:18:33 +0200, Eli Zaretskii wrote:
> > Date: Tue, 21 Jan 2025 14:13:38 +0100
> > From: Florian Franzmann <bwlf <at> bandrate.org>
> > Cc: 75725 <at> debbugs.gnu.org
> > 
> > On Di 2025-01-21 14:31:00 +0200, Eli Zaretskii wrote:
> > > > Date: Tue, 21 Jan 2025 09:15:30 +0100
> > > > From: Florian Franzmann <bwlf <at> bandrate.org>
> > > > 
> > > > I'm experiencing a segmentation violation in emacs 30.0.93 when linked against GTK.
> > > > The crash does not happen in the TUI version of emacs (which, obviously, is not
> > > > linked against GTK).
> > > > 
> > > > Backtrace:
> > > > 
> > > > #0  normal_char_ascent_descent (font=0x0, c=c <at> entry=-1, ascent=ascent <at> entry=0x7fffffff2ad0, descent=descent <at> entry=0x7fffffff2ad4)
> > > >     at xdisp.c:30407
> > > > #1  0x000000000043b18b in normal_char_height (font=<optimized out>, c=c <at> entry=-1) at xdisp.c:30443
> > > > #2  0x0000000000455cdf in handle_single_display_spec (it=it <at> entry=0x7fffffff3150, spec=<optimized out>, spec <at> entry=0x28266e3,
> > > >     object=<optimized out>, object <at> entry=0x28dc604, overlay=overlay <at> entry=0x0, position=position <at> entry=0x7fffffff32b8,
> > > >     bufpos=bufpos <at> entry=0, display_replaced=0, frame_window_p=true, enable_eval_p=true) at xdisp.c:6114
> > > > #3  0x00000000004567de in handle_display_spec (it=it <at> entry=0x7fffffff3150, spec=<optimized out>, spec <at> entry=0x28266e3,
> > > >     object=object <at> entry=0x28dc604, overlay=0x0, position=position <at> entry=0x7fffffff32b8, bufpos=bufpos <at> entry=0, frame_window_p=true)
> > > >     at xdisp.c:5862
> > > 
> > > Thanks, I installed a trivial fix.  You may not like the results, but
> > > at least Emacs should not crash.
> > Thanks, that fixed the crash.
> 
> Thanks for testing.  Does the resulting display look reasonable (it's
> somewhere on your mode line)?
> 
> > However, I think it would make sense to output some kind of useful
> > information somewhere to help with debugging such issues. Right now
> > it's just a silent error.
> 
> I don't know what to say in the message, sorry.  Saying "font is NULL"
> will not be helpful for most users, I'm afraid.
> 
> Also, Emacs has similar protection against a face's font being NULL in
> quite a few places.  I didn't invent any new technique.
> 
> I could try help you understand what causes this, if you can show me
> your font-related customizations, in particular for what is on the
> mode line.
Here is what I have in my config regarding fonts:

(setq doom-font (font-spec :family "MartianMono Nerd Font" :size 8.000000)
      doom-big-font (font-spec :family "MartianMono Nerd Font" :size 14.000000)
      doom-variable-pitch-font (font-spec :family "Noto Sans" :size 12.000000)
      doom-symbol-font (font-spec :family "MartianMono Nerd Font")
      doom-serif-font (font-spec :family "Noto Serif" :size 12.000000)
      my-org-font "Crimson Pro")
;; ...
(defun my-refine-org-theme ()
  "Custom refinements of the org-mode appearance."
  (when window-system
    (let* (
           (custom--inhibit-theme-enable nil)
           (variable-tuple     `(:font ,my-org-font))
           (base-font-color     (face-foreground 'default nil 'default))
           (headline           `(:inherit default :foreground ,base-font-color))
           )

      (custom-theme-set-faces
       'user
       '(org-block ((t (:inherit fixed-pitch))))
       '(org-code ((t (:inherit (shadow fixed-pitch)))))
       '(org-document-info ((t (:foreground "dark orange"))))
       '(org-document-info-keyword ((t (:inherit (shadow fixed-pitch)))))
       '(org-indent ((t (:inherit (org-hide fixed-pitch)))))
       '(org-link ((t (:foreground "royal blue" :underline t))))
       '(org-meta-line ((t (:inherit (font-lock-comment-face fixed-pitch)))))
       '(org-property-value ((t (:inherit fixed-pitch))) t)
       '(org-special-keyword ((t (:inherit (font-lock-comment-face fixed-pitch)))))
       '(org-table ((t (:inherit fixed-pitch :foreground "#83a598"))))
       '(org-tag ((t (:inherit (shadow fixed-pitch) :weight bold :height 1.0))))
       '(org-verbatim ((t (:inherit (shadow fixed-pitch)))))
       `(org-document-title ((t (,@headline ,@variable-tuple :height 2.0736 :underline nil :bold nil))))
       `(org-level-1 ((t (,@headline ,@variable-tuple :height 2.0736))))
       `(org-level-2 ((t (,@headline ,@variable-tuple :height 1.728))))
       `(org-level-3 ((t (,@headline ,@variable-tuple :height 1.44))))
       `(org-level-4 ((t (,@headline ,@variable-tuple :height 1.2))))
       `(org-level-5 ((t (,@headline ,@variable-tuple :height 1.0))))
       `(org-level-6 ((t (,@headline ,@variable-tuple :height 1.0))))
       `(org-level-7 ((t (,@headline ,@variable-tuple :height 1.0))))
       `(org-level-8 ((t (,@headline ,@variable-tuple :height 1.0))))
       `(org-default ((t (,@headline ,@variable-tuple :height 1.0))))
       )
      ))
  )

and then somewhere
  (add-hook 'after-enable-theme-hook 'my-refine-org-theme)
  (add-hook 'org-mode-hook 'my-refine-org-theme)

Maybe using MartianMono as doom-symbol-font is problematic?


-- 




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#75725; Package emacs. (Tue, 21 Jan 2025 19:28:02 GMT) Full text and rfc822 format available.

Message #20 received at 75725 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Florian Franzmann <bwlf <at> bandrate.org>
Cc: 75725 <at> debbugs.gnu.org
Subject: Re: bug#75725: SIGSEGV in emacs 30.0.93
Date: Tue, 21 Jan 2025 21:09:19 +0200
> Date: Tue, 21 Jan 2025 18:20:05 +0100
> From: Florian Franzmann <bwlf <at> bandrate.org>
> Cc: 75725 <at> debbugs.gnu.org
> 
> Here is what I have in my config regarding fonts:
> 
> (setq doom-font (font-spec :family "MartianMono Nerd Font" :size 8.000000)
>       doom-big-font (font-spec :family "MartianMono Nerd Font" :size 14.000000)
>       doom-variable-pitch-font (font-spec :family "Noto Sans" :size 12.000000)
>       doom-symbol-font (font-spec :family "MartianMono Nerd Font")
>       doom-serif-font (font-spec :family "Noto Serif" :size 12.000000)
>       my-org-font "Crimson Pro")
> ;; ...
> (defun my-refine-org-theme ()
>   "Custom refinements of the org-mode appearance."
>   (when window-system
>     (let* (
>            (custom--inhibit-theme-enable nil)
>            (variable-tuple     `(:font ,my-org-font))
>            (base-font-color     (face-foreground 'default nil 'default))
>            (headline           `(:inherit default :foreground ,base-font-color))
>            )
> 
>       (custom-theme-set-faces
>        'user
>        '(org-block ((t (:inherit fixed-pitch))))
>        '(org-code ((t (:inherit (shadow fixed-pitch)))))
>        '(org-document-info ((t (:foreground "dark orange"))))
>        '(org-document-info-keyword ((t (:inherit (shadow fixed-pitch)))))
>        '(org-indent ((t (:inherit (org-hide fixed-pitch)))))
>        '(org-link ((t (:foreground "royal blue" :underline t))))
>        '(org-meta-line ((t (:inherit (font-lock-comment-face fixed-pitch)))))
>        '(org-property-value ((t (:inherit fixed-pitch))) t)
>        '(org-special-keyword ((t (:inherit (font-lock-comment-face fixed-pitch)))))
>        '(org-table ((t (:inherit fixed-pitch :foreground "#83a598"))))
>        '(org-tag ((t (:inherit (shadow fixed-pitch) :weight bold :height 1.0))))
>        '(org-verbatim ((t (:inherit (shadow fixed-pitch)))))
>        `(org-document-title ((t (,@headline ,@variable-tuple :height 2.0736 :underline nil :bold nil))))
>        `(org-level-1 ((t (,@headline ,@variable-tuple :height 2.0736))))
>        `(org-level-2 ((t (,@headline ,@variable-tuple :height 1.728))))
>        `(org-level-3 ((t (,@headline ,@variable-tuple :height 1.44))))
>        `(org-level-4 ((t (,@headline ,@variable-tuple :height 1.2))))
>        `(org-level-5 ((t (,@headline ,@variable-tuple :height 1.0))))
>        `(org-level-6 ((t (,@headline ,@variable-tuple :height 1.0))))
>        `(org-level-7 ((t (,@headline ,@variable-tuple :height 1.0))))
>        `(org-level-8 ((t (,@headline ,@variable-tuple :height 1.0))))
>        `(org-default ((t (,@headline ,@variable-tuple :height 1.0))))
>        )
>       ))
>   )
> 
> and then somewhere
>   (add-hook 'after-enable-theme-hook 'my-refine-org-theme)
>   (add-hook 'org-mode-hook 'my-refine-org-theme)

Hmm... nothing stands out yet.

> Maybe using MartianMono as doom-symbol-font is problematic?

I don't know yet.  Which characters is doom-symbol-font used for?

But you could try that hypothesis by using some other font there, and
seeing if the previous build of Emacs still crashes then.

Also, any idea which font is used on the mode line, and
what part of the mode line uses the '(raise FACTOR)' display property
there?  That's the part where the display code hit the font = NULL
condition.




This bug report was last modified today.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.