diff options
-rw-r--r-- | src/ChangeLog | 16 | ||||
-rw-r--r-- | src/fileio.c | 25 |
2 files changed, 31 insertions, 10 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 8b02330ffe..0483eea4a4 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,19 @@ +2002-04-13 Richard M. Stallman <[email protected]> + + * fileio.c (Finsert_file_contents): + Don't call temp_output_buffer_setup--do just part, by hand. + + * coding.c (run_pre_post_conversion_on_str): + Don't call temp_output_buffer_setup--do just part, by hand. + + * keyboard.c (command_loop_1): Don't call start_hourglass + or cancel_hourglass when executing a macro. + + * marker.c (count_markers): New function. + + * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist + grow without limit. Move recently used elements to the front. + 2002-04-13 Eli Zaretskii <[email protected]> * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20. diff --git a/src/fileio.c b/src/fileio.c index 6abf102aa3..87a6a0da8b 100644 --- a/src/fileio.c +++ b/src/fileio.c @@ -3777,25 +3777,30 @@ actually used. */) else if (nread > 0) { struct buffer *prev = current_buffer; - int count1; + Lisp_Object buffer; + struct buffer *buf; record_unwind_protect (Fset_buffer, Fcurrent_buffer ()); - /* The call to temp_output_buffer_setup binds - standard-output. */ - count1 = specpdl_ptr - specpdl; - temp_output_buffer_setup (" *code-converting-work*"); + buffer = Fget_buffer_create (build_string (" *code-converting-work*")); + buf = XBUFFER (buffer); + + buf->directory = current_buffer->directory; + buf->read_only = Qnil; + buf->filename = Qnil; + buf->undo_list = Qt; + buf->overlays_before = Qnil; + buf->overlays_after = Qnil; - set_buffer_internal (XBUFFER (Vstandard_output)); - current_buffer->enable_multibyte_characters = Qnil; + set_buffer_internal (buf); + Ferase_buffer (); + buf->enable_multibyte_characters = Qnil; + insert_1_both (read_buf, nread, nread, 0, 0, 0); TEMP_SET_PT_BOTH (BEG, BEG_BYTE); val = call2 (Vset_auto_coding_function, filename, make_number (nread)); set_buffer_internal (prev); - - /* Remove the binding for standard-output. */ - unbind_to (count1, Qnil); /* Discard the unwind protect for recovering the current buffer. */ |