aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/insdel.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/insdel.c b/src/insdel.c
index 08043147cdf..7f15f7de52d 100644
--- a/src/insdel.c
+++ b/src/insdel.c
@@ -2351,6 +2351,17 @@ DEFUN ("combine-after-change-execute", Fcombine_after_change_execute,
2351 if (NILP (combine_after_change_list)) 2351 if (NILP (combine_after_change_list))
2352 return Qnil; 2352 return Qnil;
2353 2353
2354 /* It is rare for combine_after_change_buffer to be invalid, but
2355 possible. It can happen when combine-after-change-calls is
2356 non-nil, and insertion calls a file handler (e.g. through
2357 lock_file) which scribbles into a temp file -- cyd */
2358 if (!BUFFERP (combine_after_change_buffer)
2359 || NILP (XBUFFER (combine_after_change_buffer)->name))
2360 {
2361 combine_after_change_list = Qnil;
2362 return Qnil;
2363 }
2364
2354 record_unwind_protect (Fset_buffer, Fcurrent_buffer ()); 2365 record_unwind_protect (Fset_buffer, Fcurrent_buffer ());
2355 2366
2356 Fset_buffer (combine_after_change_buffer); 2367 Fset_buffer (combine_after_change_buffer);