nested call of the macro, there are only traces without a visible
progress reporter."
(declare (indent 3) (debug t))
- `(let (pr tm)
+ `(let (pr tm result)
(tramp-message ,vec ,level "%s..." ,message)
;; We start a pulsing progress reporter after 3 seconds. Feature
;; introduced in Emacs 24.1.
(condition-case err
(unwind-protect
;; Execute the body.
- (progn ,@body)
+ (setq result (progn ,@body))
;; Stop progress reporter.
(if tm (tramp-compat-funcall 'cancel-timer tm)))
(signal (car err) (cdr err))))
;; Exit.
- (tramp-message ,vec ,level "%s...done" ,message)))
+ (tramp-message ,vec ,level "%s...done" ,message)
+ result))
(tramp-compat-font-lock-add-keywords
'emacs-lisp-mode '("\\<with-tramp-progress-reporter\\>"))