# HG changeset patch # User Eli Zaretskii # Date 1138964729 0 # Node ID 5c6fd061a6f9f747c537dc63af921ed006317025 # Parent bc069548ae24dde76f8354493041c749b3cccad9 (archive-maybe-copy): Fix the way directories in the archive are created in archive-tmpdir. diff -r bc069548ae24 -r 5c6fd061a6f9 lisp/arc-mode.el --- a/lisp/arc-mode.el Fri Feb 03 10:25:38 2006 +0000 +++ b/lisp/arc-mode.el Fri Feb 03 11:05:29 2006 +0000 @@ -800,17 +800,13 @@ (archive-name (or (and archive-subfile-mode (aref archive-subfile-mode 0)) archive))) - (make-directory archive-tmpdir t) - ;; If ARCHIVE includes leading directories, make sure they - ;; exist under archive-tmpdir. - (let ((arch-dir (file-name-directory archive))) - (if arch-dir - (make-directory (concat - (file-name-as-directory archive-tmpdir) - arch-dir) - t))) (setq archive-local-name (archive-unique-fname archive-name archive-tmpdir)) + ;; Maked sure all the leading directories in + ;; archive-local-name exist under archive-tmpdir, so that + ;; the directory structure recorded in the archive is + ;; reconstructed in the temporary directory. + (make-directory (file-name-directory archive-local-name) t) (save-restriction (widen) (write-region start (point-max) archive-local-name nil 'nomessage))