aboutsummaryrefslogtreecommitdiffstats
path: root/src/callproc.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/callproc.c')
-rw-r--r--src/callproc.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/callproc.c b/src/callproc.c
index 9e60ba11bcf..7ba3e398b41 100644
--- a/src/callproc.c
+++ b/src/callproc.c
@@ -826,8 +826,10 @@ call_process (ptrdiff_t nargs, Lisp_Object *args, int filefd,
826 /* Now NREAD is the total amount of data in the buffer. */ 826 /* Now NREAD is the total amount of data in the buffer. */
827 immediate_quit = 0; 827 immediate_quit = 0;
828 828
829 if (NILP (BVAR (current_buffer, enable_multibyte_characters)) 829 if (!nread)
830 && ! CODING_MAY_REQUIRE_DECODING (&process_coding)) 830 ;
831 else if (NILP (BVAR (current_buffer, enable_multibyte_characters))
832 && ! CODING_MAY_REQUIRE_DECODING (&process_coding))
831 insert_1_both (buf, nread, nread, 0, 1, 0); 833 insert_1_both (buf, nread, nread, 0, 1, 0);
832 else 834 else
833 { /* We have to decode the input. */ 835 { /* We have to decode the input. */
@@ -835,6 +837,7 @@ call_process (ptrdiff_t nargs, Lisp_Object *args, int filefd,
835 ptrdiff_t count1 = SPECPDL_INDEX (); 837 ptrdiff_t count1 = SPECPDL_INDEX ();
836 838
837 XSETBUFFER (curbuf, current_buffer); 839 XSETBUFFER (curbuf, current_buffer);
840 /* FIXME: Call signal_after_change! */
838 prepare_to_modify_buffer (PT, PT, NULL); 841 prepare_to_modify_buffer (PT, PT, NULL);
839 /* We cannot allow after-change-functions be run 842 /* We cannot allow after-change-functions be run
840 during decoding, because that might modify the 843 during decoding, because that might modify the