summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/ChangeLog5
-rw-r--r--src/insdel.c5
2 files changed, 9 insertions, 1 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index d53b29bbffb..0e75c26a763 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,8 @@
+2009-02-22 Andreas Schwab <schwab@linux-m68k.org>
+
+ * insdel.c (del_range_2): Don't modify gap contents when called
+ from decode_coding_object. (Bug#1809)
+
2009-02-21 Chong Yidong <cyd@stupidchicken.com>
* data.c (syms_of_data): Define Qfont_spec, Qfont_entity, and
diff --git a/src/insdel.c b/src/insdel.c
index d8e9e99d55a..814d1571d39 100644
--- a/src/insdel.c
+++ b/src/insdel.c
@@ -2006,7 +2006,10 @@ del_range_2 (from, from_byte, to, to_byte, ret_string)
Z -= nchars_del;
GPT = from;
GPT_BYTE = from_byte;
- if (GAP_SIZE > 0) *(GPT_ADDR) = 0; /* Put an anchor. */
+ if (GAP_SIZE > 0 && !current_buffer->text->inhibit_shrinking)
+ /* Put an anchor, unless called from decode_coding_object which
+ needs to access the previous gap contents. */
+ *(GPT_ADDR) = 0;
if (GPT_BYTE < GPT)
abort ();