Function: org-odt--zip-extract
org-odt--zip-extract is a byte-compiled function defined in
ox-odt.el.gz.
Signature
(org-odt--zip-extract ARCHIVE MEMBERS TARGET)
Source Code
;; Defined in /usr/src/emacs/lisp/org/ox-odt.el.gz
;;;; Library wrappers
(defun org-odt--zip-extract (archive members target)
(when (atom members) (setq members (list members)))
(require 'arc-mode)
(dolist (member members)
(let* ((--quote-file-name
;; This is shamelessly stolen from `archive-zip-extract'.
(lambda (name)
(if (or (not (memq system-type '(windows-nt ms-dos)))
(and (boundp 'w32-quote-process-args)
(null w32-quote-process-args)))
(shell-quote-argument name)
name)))
(target (funcall --quote-file-name target))
(archive (expand-file-name archive))
(archive-zip-extract
(list "unzip" "-qq" "-o" "-d" target))
exit-code command-output)
(setq command-output
(with-temp-buffer
(setq exit-code (archive-zip-extract archive member))
(buffer-string)))
(unless (zerop exit-code)
(warn command-output)
(error "Extraction failed")))))