diff options
author | Richard M. Stallman <rms@gnu.org> | 1998-07-17 03:21:14 +0000 |
---|---|---|
committer | Richard M. Stallman <rms@gnu.org> | 1998-07-17 03:21:14 +0000 |
commit | 8dc33e1146326862a2ba5afdc091389a0ad623b1 (patch) | |
tree | 2b93f220c12737fd678c888012cd7da7e0825322 | |
parent | b528110c6ce9bf2b9c1ba5b8ff2e272dfb3749c8 (diff) | |
download | emacs-8dc33e1146326862a2ba5afdc091389a0ad623b1.tar.gz |
(archive-extract): If the extractor signals an
error, trap it, so that the buffer created for a member is killed.
-rw-r--r-- | lisp/arc-mode.el | 11 |
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) |