diff lisp/jka-compr.el @ 49377:e5099d153f94

(jka-compr-insert-file-contents): Read a process output without decoding. Decode the result by decode-coding-region-as-inserted-from-file.
author Kenichi Handa <handa@m17n.org>
date Wed, 22 Jan 2003 02:33:55 +0000
parents 1161904f7cbb
children 08f632f2bdae
line wrap: on
line diff
--- a/lisp/jka-compr.el	Wed Jan 22 02:33:07 2003 +0000
+++ b/lisp/jka-compr.el	Wed Jan 22 02:33:55 2003 +0000
@@ -527,20 +527,7 @@
 	      (local-copy
 	       (jka-compr-run-real-handler 'file-local-copy (list filename)))
 	      local-file
-	      size start
-              (coding-system-for-read
-	       (or coding-system-for-read
-		   ;; If multibyte characters are disabled,
-		   ;; don't do that conversion.
-		   (and (null enable-multibyte-characters)
-			(or (auto-coding-alist-lookup
-			     (jka-compr-byte-compiler-base-file-name file))
-			    'raw-text))
-		   (let ((coding (find-operation-coding-system
-				  'insert-file-contents
-				  (jka-compr-byte-compiler-base-file-name file))))
-		     (and (consp coding) (car coding)))
-		   'undecided)) )
+	      size start)
 
 	  (setq local-file (or local-copy filename))
 
@@ -558,7 +545,7 @@
 
 		(condition-case error-code
 
-		    (progn
+		    (let ((coding-system-for-read 'no-conversion))
 		      (if replace
 			  (goto-char (point-min)))
 		      (setq start (point))
@@ -606,6 +593,11 @@
 	     (file-exists-p local-copy)
 	     (delete-file local-copy)))
 
+	  (decode-region-as-inserted-from-file
+	   (point) (+ (point) size) 
+	   (jka-compr-byte-compiler-base-file-name file)
+	   visit beg end replace)
+
 	  (and
 	   visit
 	   (progn