changeset 20929:21009c0c7598

(Finsert_file_contents): Read a file contents into the correct buffer (byte) position. Adjusted for the change of code_convert_region.
author Kenichi Handa <handa@m17n.org>
date Fri, 20 Feb 1998 01:40:47 +0000
parents 7ad239d7020b
children 1331679fe704
files src/fileio.c
diffstat 1 files changed, 7 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/fileio.c	Fri Feb 20 01:40:47 1998 +0000
+++ b/src/fileio.c	Fri Feb 20 01:40:47 1998 +0000
@@ -3728,7 +3728,7 @@
       /* Allow quitting out of the actual I/O.  */
       immediate_quit = 1;
       QUIT;
-      this = read (fd, BYTE_POS_ADDR (PT + inserted - 1) + 1, trytry);
+      this = read (fd, BYTE_POS_ADDR (PT_BYTE + inserted - 1) + 1, trytry);
       immediate_quit = 0;
 
       if (this <= 0)
@@ -3771,7 +3771,12 @@
   if (inserted > 0)
     {
       if (CODING_MAY_REQUIRE_DECODING (&coding))
-	inserted = code_convert_region (PT, PT + inserted, &coding, 0, 0);
+	{
+	  code_convert_region (PT, PT_BYTE, PT + inserted, PT_BYTE + inserted,
+			       &coding, 0, 0);
+	  inserted = (NILP (current_buffer->enable_multibyte_characters)
+		      ? coding.produced : coding.produced_char);
+	}
 
 #ifdef DOS_NT
       /* Use the conversion type to determine buffer-file-type