Subject: Re: bug#28710: 27.0.50; eassert failure in maybe_produce_line_number

From: Eli Zaretskii <[email-masked]>
Date: Thu, 05 Oct 2017 11:30:26 +0300

> From: Alex <[email-masked]>
> Date: Wed, 04 Oct 2017 16:31:33 -0600
> 
> 1. Open up a diff in magit (e.g., M-x magit-status then RET on the first
> line).
> 2. Press RET on an added line.
> 3. In the opened buffer, do M-: (setq display-line-numbers t)
> 4. C-x b RET
> 5. Press RET on the line again.

It doesn't crash for me here.  But since it's hardly repeatable for
you, I'm not surprised.

> #2  0x00000000006233ad in die (msg=0x72ad60 "it->glyph_row == NULL || it->glyph_row->used[TEXT_AREA] == 0", file=0x726c3d "xdisp.c", line=21061) at alloc.c:7419
> #3  0x0000000000483af6 in maybe_produce_line_number (it=0x7ffef1f01900) at xdisp.c:21061

If you go to frame #3, in maybe_produce_line_number, and type

  (gdb) pgrowx it->glyph_row

what does that produce?  (You will need to source src/.gdbinit for the
pgrowx command to work.)

Btw, your recipe didn't quite work for me: the first step failed when
I pressed RET "on the first line" of the buffer presented by "M-x
magit-status" in the current release branch tip.  It said there was
nothing to show about that line.  I needed to find a suitable line
further down in the buffer.  Am I missing something here?  Can you
specify precise steps, assuming I know nothing about using Magit?

Thanks.