Subject: Re: bug#29198: Cursor fringe arrow indicator not updating.

From: Eli Zaretskii <[email-masked]>
Date: Thu, 09 Nov 2017 18:29:14 +0200

> Date:  Wed, 08 Nov 2017 20:26:16 -0800
> From:  Keith David Bershatsky <[email-masked]>
> Cc:  [email-masked]
> 
> This feature was broken on February 23, 2017 with:
> 
> dee8674414fae2323fd9cbf05aa762e72fa575e5
> 
> I manually reversed the optimization that was applied with the above-mentioned patch, and built a new Emacs 26 downloaded today and am able to verify that this corrects the problem.  I.e., manually reversing *a575e5 as applied to xdisp.c makes everything work properly.

Thanks.  Meanwhile I also arrived at the conclusion that this is a
bug, because the same recipe does work on TTY frames.

Of course, reverting the above changes is not the solution, because as
you yourself noticed, it caused redisplay to be significantly
snappier.  The problem with those changes is that they opened the path
for the code to use redisplay optimizations when overlay-arrows are
displayed, which (the optimizations) are incompatible with
overlay-arrow display.  So the correct solution would be to disable
those optimizations when overlay-arrows are displayed in the buffer.
Which I just did.

Thanks.