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.el11
1 files changed, 8 insertions, 3 deletions
diff --git a/lisp/arc-mode.el b/lisp/arc-mode.el
index e786a33944c..27425e47323 100644
--- a/lisp/arc-mode.el
+++ b/lisp/arc-mode.el
@@ -876,9 +876,14 @@ using `make-temp-name', and the generated name is returned."
(setq archive-subfile-mode descr)
(if (and
(null
- (if (fboundp extractor)
- (funcall extractor archive ename)
- (archive-*-extract archive ename (symbol-value extractor))))
+ (condition-case err
+ (if (fboundp extractor)
+ (funcall extractor archive ename)
+ (archive-*-extract archive ename
+ (symbol-value extractor)))
+ (error
+ (ding (message "%s" (error-message-string err)))
+ nil)))
just-created)
(progn
(set-buffer-modified-p nil)