Mercurial > emacs
changeset 22782:346c8633f094
(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.
author | Eli Zaretskii <eliz@gnu.org> |
---|---|
date | Sun, 19 Jul 1998 15:02:33 +0000 |
parents | d7ebc53b6b16 |
children | 1fb9133a2851 |
files | lisp/arc-mode.el |
diffstat | 1 files changed, 9 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/arc-mode.el Sun Jul 19 05:17:35 1998 +0000 +++ b/lisp/arc-mode.el Sun Jul 19 15:02:33 1998 +0000 @@ -556,8 +556,6 @@ (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 @@ (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)