Subject: bug#40317: 27.0.90; Reverting a buffer that visits C file signals an error

From: Eli Zaretskii <[email-masked]>
Date: Sat, 19 Sep 2020 10:35:18 +0300

> From: Jeff Norden <[email-masked]>
> Cc: [email-masked], [email-masked],
>   [email-masked]
> Date: Fri, 18 Sep 2020 17:03:07 -0500
> 
> Somehow, and I sure don't know how, I think that c-after-change gets
> called with: c-new-END already set to the value of point-max after the
> insertion; and with the other variables set so that that beg, end, and
> old-len remain unchanged.  It's the only scenario that I can see that
> fits the backtrace that Eli posted.
> 
> If Damien and/or Eli can temporarily try out the test that I suggested
> and get it to trigger, I think that would verify this.  In fact, maybe
> warn would be even better: 
> 
>   (if (> c-new-END (point-max))
>     (warn "c-new-END is too big! %d > %d" c-new-END (point-max)))

Unfortunately, the problem no longer happens to me, not in many
moons.  Not sure why: I didn't change my usage patterns.

Hopefully, Damien will be able to test this theory.  Thanks.