Subject: bug#15365: 24.3.50; Segfault when calling vc-git-log-edit-toggle-amend

From: Eli Zaretskii <[email-masked]>
Date: Sat, 14 Sep 2013 16:45:32 +0300

> Date: Sat, 14 Sep 2013 16:08:17 +0300
> From: Dmitry Gutov <[email-masked]>
> CC: martin rudalics <[email-masked]>, [email-masked]
> 
> On 14.09.2013 13:16, Eli Zaretskii wrote:
> > My analysis concluded that it wasn't supposed to abort, just not call
> > set_cursor_from_row in that case.  The call to abort was added long
> > ago, when row_containing_pos got a minor modification, and the person
> > who made the change thought that perhaps that change will cause
> > damage.  I think we can remove that call to abort now.  And if that
> > causes any regressions, there's a more drastic way of calling GIVE_UP
> > in that case.
> 
> Since that code is old, I wonder what could have changed lately.

I don't know, but the amount of display-related changes committed
lately is very large.

In any case, I don't see why try_window_id should be unable to handle
the case of all matrix rows being not enabled.  We must not call
set_cursor_from_row with a NULL row, because that function cannot
tolerate such situations; but other than that, I cannot find any
reason for not handling such matrices, let alone aborting.

> I've been using `vc-git-log-edit-toggle-amend' without crashes for 
> nearly a year now, since it's been added.

If you can identify the last revision where this abort didn't happen,
I could try figuring out what changed.