aboutsummaryrefslogtreecommitdiffstats
path: root/src/callproc.c
diff options
context:
space:
mode:
authorKenichi Handa2000-08-04 02:12:39 +0000
committerKenichi Handa2000-08-04 02:12:39 +0000
commitf778b157f43c349e17cb337a034fa725b5ff02ec (patch)
tree113d0552cbbb5b7c09b28d48ee6c47799bd6d224 /src/callproc.c
parente7046a1877c5664dd122fd874b374c4a235865bb (diff)
downloademacs-f778b157f43c349e17cb337a034fa725b5ff02ec.tar.gz
emacs-f778b157f43c349e17cb337a034fa725b5ff02ec.zip
(Fcall_process): Handle post-read-conversion of coding system if any.
Diffstat (limited to 'src/callproc.c')
-rw-r--r--src/callproc.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/callproc.c b/src/callproc.c
index a79816b2f38..396629a0861 100644
--- a/src/callproc.c
+++ b/src/callproc.c
@@ -727,6 +727,8 @@ If you quit, the process is killed with SIGINT, or SIGKILL if you quit again.")
727 int carryover = 0; 727 int carryover = 0;
728 int display_on_the_fly = !NILP (display) && INTERACTIVE; 728 int display_on_the_fly = !NILP (display) && INTERACTIVE;
729 struct coding_system saved_coding; 729 struct coding_system saved_coding;
730 int pt_orig = PT, pt_byte_orig = PT_BYTE;
731 int inserted;
730 732
731 saved_coding = process_coding; 733 saved_coding = process_coding;
732 if (process_coding.composing != COMPOSITION_DISABLED) 734 if (process_coding.composing != COMPOSITION_DISABLED)
@@ -844,6 +846,13 @@ If you quit, the process is killed with SIGINT, or SIGKILL if you quit again.")
844 coding_free_composition_data (&process_coding); 846 coding_free_composition_data (&process_coding);
845 } 847 }
846 848
849 record_unwind_protect (save_excursion_restore, save_excursion_save ());
850 inserted = PT - pt_orig;
851 TEMP_SET_PT_BOTH (pt_orig, pt_byte_orig);
852 if (SYMBOLP (process_coding.post_read_conversion)
853 && !NILP (Ffboundp (process_coding.post_read_conversion)))
854 call1 (process_coding.post_read_conversion, make_number (inserted));
855
847 Vlast_coding_system_used = process_coding.symbol; 856 Vlast_coding_system_used = process_coding.symbol;
848 857
849 /* If the caller required, let the buffer inherit the 858 /* If the caller required, let the buffer inherit the