Subject: Re: bug#22472: 25.0.50; org-mode: latex fragments can't be un-rendered after a revert

From: Dima Kogan <[email-masked]>
Date: Thu, 04 Feb 2016 10:21:34 -0800

Nicolas Goaziou <[email-masked]> writes:

> Dima Kogan <[email-masked]> writes:
>
>> Nicolas Goaziou <[email-masked]> writes:
>>
>>> Would the following patch (applied on maint) solve the problem?
>>
>> Hi. I didn't observe anything acting differently with this patch. What
>> did you see it do? Was it supposed to unrender on revert, or to keep the
>> render, but update the state?
>
> As the commit message says, it is supposed to remove the overlay when
> text below is modified (e.g. when using a replace-regexp). E.g.,
>
>  1. Write \(1 + 2\)
>
>  2. Toggle overlay with C-c C-x C-l
>
>  3. M-% 2 RET 3 RET
>
>  4. The overlay should have disappeared
>
> I didn't test it with the `revert-buffer' command, but I would be
> surprised that it doesn't run any modification hook.

Ah. Thanks for explaining. The patch helps somewhat, but one can still
get into an inconsistent state:

  1. Write \(1 + 2\)
  2. Toggle overlay with C-c C-x C-l
  3. M-x revert-buffer

After the revert, the overlay remains, which is arguably OK, since the
text has not changed. However after the revert org doesn't realize that
the overlay is still up: org-latex-fragment-image-overlays is nil.

I think the overlays should all disappear on a revert.

Thanks!