GNU bug report logs -
#72692
Emacs 31.05 (40eecd594ac) get SIGSEGV on Linux (Linux 6.6.45 Kde Wayland)
Previous Next
Reported by: Eval EXEC <execvy <at> gmail.com>
Date: Sun, 18 Aug 2024 08:31:01 UTC
Severity: normal
Done: Eli Zaretskii <eliz <at> gnu.org>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
> Date: Mon, 19 Aug 2024 16:34:59 +0000
> From: Pip Cet <pipcet <at> protonmail.com>
> Cc: execvy <at> gmail.com, 72692 <at> debbugs.gnu.org
>
> "Eli Zaretskii" <eliz <at> gnu.org> writes:
>
> > Thanks, but I'd also like to see the callers which call
> > free_realized_face in a way that causes the latter to call
> > free_face_fontset. That's why I asked for backtraces from those
> > calls, but I don't think you sent such backtraces. What you sent was
>
> Just for the record, you asked:
>
> > So can you show a backtrace from the call to free_realized_faces
> > (supposedly called by realize_basic_faces?) which causes these
> > printfs:
> > > fontset 103 used for face 0x117cca0
> > > fontset 103 used for face 0x2a7a3c0
> > > fontset 103 used for face 0x117cca0
> > > fontset 103 used for face 0x2a62860
>
> ... which I misunderstood. Sorry.
Sorry for being unclear.
> Is this what you want?
Yes, recompute_basic_faces was the prime suspect. I think we added
several calls to it over the last years, to fix problems with face
cache being emptied at some unexpected times.
> Indeed, I can report that the bug doesn't seem to occur after this
> simple change:
>
> diff --git a/src/xfaces.c b/src/xfaces.c
> index 684b6ccfac7..a4ac9c0787a 100644
> --- a/src/xfaces.c
> +++ b/src/xfaces.c
> @@ -736,6 +736,7 @@ recompute_basic_faces (struct frame *f)
> clear_face_cache (false);
> if (!realize_basic_faces (f))
> emacs_abort ();
> + f->face_change = true;
> }
> }
>
>
> So something like that (though moving the call down into
> realize_basic_faces or even further would be good) would probably work
> for the OP, and emacs-30?
I think setting the flag in recompute_basic_faces should be enough.
Let me think about it some more.
This bug report was last modified 257 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.