Subject: bug#60580: 29.0.60; crash in xdisp.c with modus theme and display-fill-column-indicator

From: chad <[email-masked]>
Date: Mon, 9 Jan 2023 16:41:11 -0500

Apologies; I was away for a while. The problem is fixed in the current
emacs-29 branch, indeed.

The ascent/height numbers were an error introduced by me when I was
transcribing things from the emacs I was debugging, the emacs I was using
to create the bug report, and the email program that I needed to use for
annoying reasons. Please accept my heartfelt apologies for the misleading
mistake.

Thanks,
~Chad

On Fri, Jan 6, 2023 at 2:12 AM Eli Zaretskii <[email-masked]> wrote:

> > From: Protesilaos Stavrou <[email-masked]>
> > Cc: [email-masked]
> > Date: Fri, 06 Jan 2023 06:01:05 +0200
> >
> > >   ;;;;; display-fill-column-indicator-mode
> > >       `(fill-column-indicator ((,class :height 1 :background
> ,bg-region :foreground ,bg-region)))
> > >
> > > I have no idea what is ":height 1" about, but I think it's wrong and
> > > should be replaced with some reasonable value.
> >
> > The ":height 1" has been there for many versions and never caused a
> > problem of this sort.
>
> I'm guessing that this is because almost no one builds Emacs with the
> assertions enabled (--enable-testing=yes at configure time).  I do,
> but the problem doesn't happen on my system, so I haven't seen it,
> either.
>
> > The reason it is like this is to make the indicator a contiguous
> > line that is not affected by variations in font heights and/or a high
> > 'line-spacing' value.  Otherwise the indicator can appear as a dashed
> > line.
>
> Why do you assume that ":height 1" will avoid this problem?  I think
> you are just using some undocumented side effect of the
> implementation, as there's no reason to believe using such small
> height of the face can solve the problem with occasional 1-pixel gaps
> in the fill-column indicator.
>
> But let's first see if my latest changes prevent the assertion
> violations even without changing the themed faces.
>