aboutsummaryrefslogtreecommitdiffstats
path: root/src/coding.c
diff options
context:
space:
mode:
authorKenichi Handa1998-10-26 08:00:11 +0000
committerKenichi Handa1998-10-26 08:00:11 +0000
commit0007bdd098d4397ac1ad9e272617fb8e93a1ad40 (patch)
treeec380f3c8342b1fecb15e33a974f91898576a479 /src/coding.c
parent581bba23d414027a628fa9a027c55982053a96e3 (diff)
downloademacs-0007bdd098d4397ac1ad9e272617fb8e93a1ad40.tar.gz
emacs-0007bdd098d4397ac1ad9e272617fb8e93a1ad40.zip
(code_convert_region): Kill the work buffer created by
pre-write-conversion.
Diffstat (limited to 'src/coding.c')
-rw-r--r--src/coding.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/coding.c b/src/coding.c
index 6d78aa0d7b9..5ae0d5f4dc4 100644
--- a/src/coding.c
+++ b/src/coding.c
@@ -4264,18 +4264,20 @@ code_convert_region (from, from_byte, to, to_byte, coding, encodep, replace)
4264 { 4264 {
4265 /* The function in pre-write-conversion may put a new text in a 4265 /* The function in pre-write-conversion may put a new text in a
4266 new buffer. */ 4266 new buffer. */
4267 struct buffer *prev = current_buffer, *new; 4267 struct buffer *prev = current_buffer;
4268 Lisp_Object new;
4268 4269
4269 call2 (coding->pre_write_conversion, 4270 call2 (coding->pre_write_conversion,
4270 make_number (from), make_number (to)); 4271 make_number (from), make_number (to));
4271 if (current_buffer != prev) 4272 if (current_buffer != prev)
4272 { 4273 {
4273 len = ZV - BEGV; 4274 len = ZV - BEGV;
4274 new = current_buffer; 4275 new = Fcurrent_buffer ();
4275 set_buffer_internal_1 (prev); 4276 set_buffer_internal_1 (prev);
4276 del_range_2 (from, from_byte, to, to_byte); 4277 del_range_2 (from, from_byte, to, to_byte);
4277 TEMP_SET_PT_BOTH (from, from_byte); 4278 TEMP_SET_PT_BOTH (from, from_byte);
4278 insert_from_buffer (new, 1, len, 0); 4279 insert_from_buffer (XBUFFER (new), 1, len, 0);
4280 Fkill_buffer (new);
4279 if (orig_point >= to) 4281 if (orig_point >= to)
4280 orig_point += len - orig_len; 4282 orig_point += len - orig_len;
4281 else if (orig_point > from) 4283 else if (orig_point > from)