summaryrefslogtreecommitdiff
path: root/lisp/arc-mode.el
diff options
context:
space:
mode:
Diffstat (limited to 'lisp/arc-mode.el')
-rw-r--r--lisp/arc-mode.el9
1 files changed, 6 insertions, 3 deletions
diff --git a/lisp/arc-mode.el b/lisp/arc-mode.el
index fb6155dfd41..6dda7b2e40b 100644
--- a/lisp/arc-mode.el
+++ b/lisp/arc-mode.el
@@ -1811,10 +1811,13 @@ This doesn't recover lost files, it just undoes changes in the buffer itself."
(t
(archive-extract-by-stdout
archive
- ;; unzip expands wildcards in NAME, so we need to quote it.
+ ;; unzip expands wildcards in NAME, so we need to quote it. But
+ ;; not on DOS/Windows, since that fails extraction on those
+ ;; systems, and file names with wildcards in zip archives don't
+ ;; work there anyway.
;; FIXME: Does pkunzip need similar treatment?
- ;; (7z doesn't need to quote wildcards)
- (if (equal (car archive-zip-extract) "unzip")
+ (if (and (not (memq system-type '(windows-nt ms-dos)))
+ (equal (car archive-zip-extract) "unzip"))
(shell-quote-argument name)
name)
archive-zip-extract))))