org-odt.el: When zip command fails, log its output as a message

* contrib/lisp/org-odt.el (org-odt-save-as-outfile): When the
zip command fails, spit out the output it generates to
"*Messages*" buffer.
This commit is contained in:
Jambunathan K 2011-09-26 00:15:53 +05:30
parent e9ce64c8bb
commit 32cf8bf731
1 changed files with 7 additions and 3 deletions

View File

@ -1736,14 +1736,18 @@ visually."
;; FIXME: If the file is locked this throws a cryptic error ;; FIXME: If the file is locked this throws a cryptic error
(delete-file target)) (delete-file target))
(let ((coding-system-for-write 'no-conversion) exitcode) (let ((coding-system-for-write 'no-conversion) exitcode err-string)
(message "Creating odt file...") (message "Creating odt file...")
(mapc (mapc
(lambda (cmd) (lambda (cmd)
(message "Running %s" (mapconcat 'identity cmd " ")) (message "Running %s" (mapconcat 'identity cmd " "))
(setq err-string
(with-output-to-string
(setq exitcode (setq exitcode
(apply 'call-process (car cmd) nil nil nil (cdr cmd))) (apply 'call-process (car cmd)
nil standard-output nil (cdr cmd)))))
(or (zerop exitcode) (or (zerop exitcode)
(ignore (message "%s" err-string))
(error "Unable to create odt file (%S)" exitcode))) (error "Unable to create odt file (%S)" exitcode)))
cmds)) cmds))