aboutsummaryrefslogtreecommitdiffstats
path: root/src/coding.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/coding.c')
-rw-r--r--src/coding.c19
1 files changed, 16 insertions, 3 deletions
diff --git a/src/coding.c b/src/coding.c
index dce943d3310..2a1fc1309f1 100644
--- a/src/coding.c
+++ b/src/coding.c
@@ -5797,17 +5797,30 @@ run_pre_post_conversion_on_str (str, coding, encodep)
5797 int count = specpdl_ptr - specpdl; 5797 int count = specpdl_ptr - specpdl;
5798 struct gcpro gcpro1; 5798 struct gcpro gcpro1;
5799 int multibyte = STRING_MULTIBYTE (str); 5799 int multibyte = STRING_MULTIBYTE (str);
5800 Lisp_Object buffer;
5801 struct buffer *buf;
5800 5802
5801 record_unwind_protect (Fset_buffer, Fcurrent_buffer ()); 5803 record_unwind_protect (Fset_buffer, Fcurrent_buffer ());
5802 record_unwind_protect (code_convert_region_unwind, Qnil); 5804 record_unwind_protect (code_convert_region_unwind, Qnil);
5803 GCPRO1 (str); 5805 GCPRO1 (str);
5804 temp_output_buffer_setup (" *code-converting-work*"); 5806
5805 set_buffer_internal (XBUFFER (Vstandard_output)); 5807 buffer = Fget_buffer_create (build_string (" *code-converting-work*"));
5808 buf = XBUFFER (buffer);
5809
5810 buf->directory = current_buffer->directory;
5811 buf->read_only = Qnil;
5812 buf->filename = Qnil;
5813 buf->undo_list = Qt;
5814 buf->overlays_before = Qnil;
5815 buf->overlays_after = Qnil;
5816
5817 set_buffer_internal (buf);
5806 /* We must insert the contents of STR as is without 5818 /* We must insert the contents of STR as is without
5807 unibyte<->multibyte conversion. For that, we adjust the 5819 unibyte<->multibyte conversion. For that, we adjust the
5808 multibyteness of the working buffer to that of STR. */ 5820 multibyteness of the working buffer to that of STR. */
5809 Ferase_buffer (); 5821 Ferase_buffer ();
5810 current_buffer->enable_multibyte_characters = multibyte ? Qt : Qnil; 5822 buf->enable_multibyte_characters = multibyte ? Qt : Qnil;
5823
5811 insert_from_string (str, 0, 0, 5824 insert_from_string (str, 0, 0,
5812 XSTRING (str)->size, STRING_BYTES (XSTRING (str)), 0); 5825 XSTRING (str)->size, STRING_BYTES (XSTRING (str)), 0);
5813 UNGCPRO; 5826 UNGCPRO;