(Fcall_process): Bind inhibit-modification-hooks to t when decoding

process output.
This commit is contained in:
Eli Zaretskii 2009-03-02 21:04:42 +00:00
parent 5d4cf42aa8
commit 71a0c011da
2 changed files with 13 additions and 0 deletions

View file

@ -1,3 +1,8 @@
2009-03-02 Eli Zaretskii <eliz@gnu.org>
* callproc.c (Fcall_process): Bind inhibit-modification-hooks to t
when decoding process output.
2009-03-01 Richard M Stallman <rms@gnu.org>
* m/mips.h (DATA_SEG_BITS, XUINT, XSET): Definitions disabled.

View file

@ -732,10 +732,18 @@ usage: (call-process PROGRAM &optional INFILE BUFFER DISPLAY &rest ARGS) */)
else
{ /* We have to decode the input. */
Lisp_Object curbuf;
int count1 = SPECPDL_INDEX ();
XSETBUFFER (curbuf, current_buffer);
/* We cannot allow after-change-functions be run
during decoding, because that might modify the
buffer, while we rely on process_coding.produced to
faithfully reflect inserted text until we
TEMP_SET_PT_BOTH below. */
specbind (Qinhibit_modification_hooks, Qt);
decode_coding_c_string (&process_coding, buf, nread,
curbuf);
unbind_to (count1, Qnil);
if (display_on_the_fly
&& CODING_REQUIRE_DETECTION (&saved_coding)
&& ! CODING_REQUIRE_DETECTION (&process_coding))