GNU bug report logs -
#30823
25.3; modification-hooks of overlays are not run in some cases
Previous Next
Reported by: Ren Victor <victorhge <at> gmail.com>
Date: Thu, 15 Mar 2018 04:17:02 UTC
Severity: normal
Tags: fixed, patch
Found in version 25.3
Fixed in version 26.2
Done: Noam Postavsky <npostavs <at> gmail.com>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
>> Coming back to this, there is also the possibility of passing true for
>> PREPARE, though I'm not sure if that would be better or worse. Any
>> comments?
> AFAIR, we never want to use PREPARE = true when dealing with the
> *Messages* buffer, you can see that elsewhere in message_dolog. The
> reason I believe is that we might trigger infinite recursion if the
> modification hooks log a message for some reason.
The current code already allows running `message` in this way (and that
leads to suboptimal behavior, tho nothing really serious). I think we
should use `true` here and then actively try and detect nested uses of
`message` and deal with those in an ad-hoc way (e.g. bind
inhibit-modification-hooks during the nested call so the recursion is at
most 2 deep).
The benefit is that it makes this part of the code more "normal" and
will probably fix/avoid other bugs like this one.
The patch I sent in
https://lists.gnu.org/archive/html/emacs-devel/2018-05/msg00600.html
went in this direction and my experimentation with it did not encounter
any serious problem. IOW I think the comment near message_dolog is
largely out of date.
Stefan
This bug report was last modified 6 years and 309 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.