[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: inhibit-modification-hooks set to t globally

From: Eli Zaretskii
Subject: Re: inhibit-modification-hooks set to t globally
Date: Thu, 25 Sep 2014 16:20:29 +0300

> From: Nicolas Richard <address@hidden>
> Cc: address@hidden
> Date: Thu, 25 Sep 2014 13:14:46 +0200
> By looking at the source, I managed to find that I should "watch
> globals.f_inhibit_modification_hooks", but I could not find a way to set
> up a condition with "watch". Also I don't know what the condition should
> be. Can you guide me a little more ?

Maybe the first thing to try is simply something like this:

 (gdb) watch globals.f_inhibit_modification_hooks if 
globals.f_inhibit_modification_hooks == Qt
 (gdb) commands
   > xbacktrace
   > continue
   > end

(To get the "xbacktrace" command, start GDB in the Emacs src/
directory, or manually type "source /path/to/emacs/src/.gdbinit" once
inside GDB.)

Then turn on logging in GDB:

 (gdb) set logging on

Then run Emacs with the "run" command, and use it as usual until you
have your problem reproduced.  You could then look inside the file
gdb.txt, where GDB logs all its output, for the last watchpoint break.

If the watchpoint gets hit a lot, then Emacs will run slower, but
hopefully not too slow to become unusable.

Hopefully, not many Lisp packages/functions let-bind this variable, so
you won't need to wade through too many false positives.  If that
strategy succeeds, no watchpoint conditions will be needed.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]