]> git.eshelyaron.com Git - emacs.git/commitdiff
* lisp/tar-mode.el (tar--try-jka-compr): Remove. (Bug#34251)
authorJuri Linkov <juri@linkov.net>
Sun, 17 Feb 2019 21:07:43 +0000 (23:07 +0200)
committerJuri Linkov <juri@linkov.net>
Sun, 17 Feb 2019 21:07:43 +0000 (23:07 +0200)
(tar-extract): Call archive-try-jka-compr instead of tar--try-jka-compr.

* lisp/arc-mode.el (archive-try-jka-compr): Call set-buffer-multibyte
after erase-buffer.

lisp/arc-mode.el
lisp/tar-mode.el

index 2b5b6166ad55efb7995fcd86b9c4026031e11cc4..8de01030195c648a8d11ca23b0d964363070b793 100644 (file)
@@ -967,8 +967,8 @@ using `make-temp-file', and the generated name is returned."
                   ;; Don't re-compress this data just before decompressing it.
                   (jka-compr-inhibit t))
               (write-region (point-min) (point-max) tmpfile nil 'quiet))
-            (set-buffer-multibyte t)
             (erase-buffer)
+            (set-buffer-multibyte t)
             (insert-file-contents tmpfile))
         (delete-file tmpfile)))))
 
index c5382d3f3d1c64d6155d1cf3d7ab09da6b69074a..599da9ac8070f437208ca3078ba36e323bfdc2d2 100644 (file)
@@ -95,6 +95,7 @@
 ;;; Code:
 
 (eval-when-compile (require 'cl-lib))
+(require 'arc-mode)
 
 (defgroup tar nil
   "Simple editing of tar files."
@@ -852,26 +853,6 @@ actually appear on disk when you save the tar-file's buffer."
   (goto-char (posn-point (event-end event)))
   (tar-extract))
 
-(defun tar--try-jka-compr ()
-  (when (and auto-compression-mode
-             (jka-compr-get-compression-info buffer-file-name))
-    (let* ((basename (file-name-nondirectory buffer-file-name))
-           (tmpname (if (string-match ":\\([^:]+\\)\\'" basename)
-                        (match-string 1 basename) basename))
-           (tmpfile (make-temp-file (file-name-sans-extension tmpname)
-                                    nil
-                                    (file-name-extension tmpname 'period))))
-      (unwind-protect
-          (progn
-            (let ((coding-system-for-write 'no-conversion)
-                  ;; Don't re-compress this data just before decompressing it.
-                  (jka-compr-inhibit t))
-              (write-region (point-min) (point-max) tmpfile nil 'quiet))
-            (set-buffer-multibyte t)
-            (erase-buffer)
-            (insert-file-contents tmpfile))
-        (delete-file tmpfile)))))
-
 (defun tar-file-name-handler (op &rest args)
   "Helper function for `tar-extract'."
   (or (eq op 'file-exists-p)
@@ -951,7 +932,7 @@ actually appear on disk when you save the tar-file's buffer."
         (setq buffer-file-name new-buffer-file-name)
         (setq buffer-file-truename
               (abbreviate-file-name buffer-file-name))
-        (tar--try-jka-compr)       ;Pretty ugly hack :-(
+        (archive-try-jka-compr)       ;Pretty ugly hack :-(
         ;; Force buffer-file-coding-system to what
         ;; decode-coding-region actually used.
         (set-buffer-file-coding-system last-coding-system-used t)