diff options
| author | Kenichi Handa | 1998-10-26 08:00:11 +0000 |
|---|---|---|
| committer | Kenichi Handa | 1998-10-26 08:00:11 +0000 |
| commit | 0007bdd098d4397ac1ad9e272617fb8e93a1ad40 (patch) | |
| tree | ec380f3c8342b1fecb15e33a974f91898576a479 /src/coding.c | |
| parent | 581bba23d414027a628fa9a027c55982053a96e3 (diff) | |
| download | emacs-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.c | 8 |
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) |