From: Eli Zaretskii Date: Sun, 19 Jul 1998 15:02:33 +0000 (+0000) Subject: (archive-mode): Undo previous change. X-Git-Tag: emacs-20.3~297 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=e26d162106b39af852923907521a0dc7dc2411ba;p=emacs.git (archive-mode): Undo previous change. (archive-extract): Make the buffer unibyte if the extracted file was read with coding-system of no-conversion or raw-text. --- diff --git a/lisp/arc-mode.el b/lisp/arc-mode.el index ea1f4828454..8f3ebd1f439 100644 --- a/lisp/arc-mode.el +++ b/lisp/arc-mode.el @@ -556,8 +556,6 @@ archive. (make-local-variable 'archive-file-list-start) (make-local-variable 'archive-file-list-end) (make-local-variable 'archive-file-name-indent) - ;; Always edit an archive file in unibyte mode. - (set-buffer-multibyte nil) (archive-summarize nil) (setq buffer-read-only t)))) @@ -890,6 +888,15 @@ using `make-temp-name', and the generated name is returned." (progn (set-buffer-modified-p nil) (kill-buffer buffer)) + ;; If Emacs were to visit the file we've extracted, it would make + ;; the buffer be unibyte if the detected coding-system is + ;; no-conversion or raw-text-*. We want the same behavior here + ;; as if we were visiting the file, even though some extractors + ;; read the file's contents from a pipe. + (if (or (eq last-coding-system-used 'no-conversion) + ;; type 5 is raw-text + (eq (coding-system-type last-coding-system-used) 5)) + (set-buffer-multibyte nil)) (goto-char (point-min)) (rename-buffer bufname) (setq buffer-read-only read-only-p)