Subject: bug#25132: 26.0.50; emacs hangs when loading org file with python source blocks

From: Dmitry Gutov <[email-masked]>
Date: Mon, 23 Jan 2017 06:53:21 +0300

On 20.01.2017 03:52, [email-masked] wrote:

> My feeling is that inhibit-modification-hooks should usually be buffer
> local anyway.

Maybe you're right.

inhibit-read-only, bound nearby, seems to be in the same situation.

>> If we are not, why not make inhibit-modification-hooks always
>> buffer-local instead?
>
> It would have to be in addition to, because even after doing
> (make-variable-buffer-local 'var), (let ((var 'foo))...) still makes a
> global binding.  `make-variable-buffer-local' only has effect for
> `setq', which I think will hardly ever happen for
> `inhibit-modification-hooks'.

You're right, and that sounds a little too complicated for my taste.

So, personally, I'd try to fix the particular instance first. Switching 
buffers inside with-silent-modifications is not a very common usage, I 
think.

Maybe org-src should itself let-bind the aforementioned variable(s) 
where it visits other buffers.

Up to you, of course, since you've already been given the go-ahead for 
the proposed fix.