Function: package--unless-error

package--unless-error is a macro defined in package.el.gz.

Signature

(package--unless-error BODY &rest BEFORE-BODY)

Source Code

;; Defined in /usr/src/emacs/lisp/emacs-lisp/package.el.gz
(defmacro package--unless-error (body &rest before-body)
  (declare (debug t) (indent 1))
  (let ((err (make-symbol "err")))
    `(with-temp-buffer
       (set-buffer-multibyte nil)
       (when (condition-case ,err
                 (progn ,@before-body t)
               (error (funcall error-function)
                      (unless noerror
                        (signal (car ,err) (cdr ,err)))))
         (funcall ,body)))))