[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#5475: Archives with filenames with square brackets
From: |
Juri Linkov |
Subject: |
bug#5475: Archives with filenames with square brackets |
Date: |
Sun, 31 Jan 2010 12:56:19 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/23.1.92 (x86_64-pc-linux-gnu) |
>> The default value of `archive-zip-extract' can be either "unzip" or
>> "pkunzip" (depending on the presence of the executable in `exec-path'),
>> but the function `archive-zip-extract' compares with the value "pkzip".
>> So the pkzip/pkunzip branch is never executed.
>>
>> It seems the intention of the change revno#45347 (2002-05-19) was
>> to compare with "pkunzip" instead of "pkzip"
>
> Right, looks like a bug.
>
> Btw, I looked into 7z, and it doesn't have the same problem as unzip.
> So we probably should only quote with unzip.
Does the following patch look right? At least, it fixes a bug, and
after feature freeze we could add more data structures to defcustom to
indicate whether the file name needs to be quoted.
=== modified file 'lisp/arc-mode.el'
--- lisp/arc-mode.el 2010-01-28 20:06:36 +0000
+++ lisp/arc-mode.el 2010-01-31 10:55:14 +0000
@@ -1782,12 +1782,13 @@ (defun archive-zip-summarize ()
(apply 'vector (nreverse files))))
(defun archive-zip-extract (archive name)
- (if (equal (car archive-zip-extract) "pkzip")
- (archive-*-extract archive name archive-zip-extract)
- ;; unzip expands wildcards in NAME, so we need to quote it.
- ;; FIXME: Does pkzip need similar treatment?
- (archive-extract-by-stdout archive (shell-quote-argument name)
- archive-zip-extract)))
+ (if (equal (car archive-zip-extract) "unzip")
+ ;; unzip expands wildcards in NAME, so we need to quote it.
+ ;; FIXME: Does pkzip need similar treatment?
+ ;; (7z doesn't need to quote wildcards)
+ (archive-extract-by-stdout archive (shell-quote-argument name)
+ archive-zip-extract)
+ (archive-*-extract archive name archive-zip-extract)))
(defun archive-zip-write-file-member (archive descr)
(archive-*-write-file-member
--
Juri Linkov
http://www.jurta.org/emacs/
- bug#5475: Archives with filenames with square brackets, (continued)
- bug#5475: Archives with filenames with square brackets, Chong Yidong, 2010/01/26
- bug#5475: Archives with filenames with square brackets, Eli Zaretskii, 2010/01/26
- bug#5475: Archives with filenames with square brackets, Chong Yidong, 2010/01/27
- bug#5475: Archives with filenames with square brackets, Eli Zaretskii, 2010/01/27
- bug#5475: Archives with filenames with square brackets, Chong Yidong, 2010/01/28
- bug#5475: Archives with filenames with square brackets, Eli Zaretskii, 2010/01/28
- bug#5475: Archives with filenames with square brackets, Lennart Borgman, 2010/01/28
- bug#5475: Archives with filenames with square brackets, Eli Zaretskii, 2010/01/28
- bug#5475: Archives with filenames with square brackets, Juri Linkov, 2010/01/30
- bug#5475: Archives with filenames with square brackets, Eli Zaretskii, 2010/01/30
- bug#5475: Archives with filenames with square brackets,
Juri Linkov <=
- bug#5475: Archives with filenames with square brackets, Eli Zaretskii, 2010/01/31
- bug#5475: Archives with filenames with square brackets, Juri Linkov, 2010/01/31
- bug#5475: Archives with filenames with square brackets, Eli Zaretskii, 2010/01/31