[PATCH 2/7] emacs: Use unified error handling in notmuch-call-notmuch-process
Austin Clements
amdragon at MIT.EDU
Fri Dec 14 21:15:08 PST 2012
This makes notmuch-call-notmuch-process use the unified CLI error
handling, which basically refines the error handling this function
already did.
---
emacs/notmuch.el | 15 ++++-----------
1 file changed, 4 insertions(+), 11 deletions(-)
diff --git a/emacs/notmuch.el b/emacs/notmuch.el
index f9454d8..e25b54e 100644
--- a/emacs/notmuch.el
+++ b/emacs/notmuch.el
@@ -538,17 +538,10 @@ If BARE is set then do not prefix with \"thread:\""
Output from the process will be presented to the user as an error
and will also appear in a buffer named \"*Notmuch errors*\"."
- (let ((error-buffer (get-buffer-create "*Notmuch errors*")))
- (with-current-buffer error-buffer
- (erase-buffer))
- (if (eq (apply 'call-process notmuch-command nil error-buffer nil args) 0)
- (point)
- (progn
- (with-current-buffer error-buffer
- (let ((beg (point-min))
- (end (- (point-max) 1)))
- (error (buffer-substring beg end))
- ))))))
+ (with-temp-buffer
+ (let ((status (apply #'call-process notmuch-command nil t nil args)))
+ (notmuch-check-exit-status status (cons notmuch-command args)
+ (buffer-string)))))
(defun notmuch-search-set-tags (tags &optional pos)
(let ((new-result (plist-put (notmuch-search-get-result pos) :tags tags)))
--
1.7.10.4
More information about the notmuch
mailing list