> Emacs can't, and shouldn't try to, protect against random crap in hooks,
> except where a particular mistake is very common and easy to make.

I couldn't agree less with you. It is the consequences of the "random
crap" which should dictate whether it makes sense to protect against
it. Easy to make mistakes that cause no harm should perhaps be
avoided, but *if not*, a simple warning on the documentation would
suffice. Not so with not-that-common, but potentially more serious,
problems.

Moreover, in this particular case, the function which causes the
buffer switch was in the hook for a long time. It was a change to
`occur-1' 
(http://savannah.gnu.org/cgi-bin/viewcvs/emacs/emacs/lisp/replace.el.diff?r1=1.208&r2=1.209,
if you're wondering) which suddenly made a
yes-I-admit-erroneous-but-not-dangerous-till-now-function to suddenly
become dangerous. I'm not putting the "blame" on the change (which is,
AFAICS, correct), only stressing that when a function runs a hook and
*afterwards* sets the not-modified flag, protecting against the change
of the buffer is not a defense against "random crap". It's helping the
user not to shoot his own foot.

-- 
                    /L/e/k/t/u


_______________________________________________
Emacs-devel mailing list
Emacs-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-devel

Reply via email to