X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=blobdiff_plain;f=emacs%2Fnotmuch.el;h=c98a4febbf69f9dcc100aa8e2b3449d77a9ed89d;hp=9da8df4d377f31fb5b125a6a3de0774b417ed85e;hb=401dbebd4803477563eff03d719605ed37a8e44d;hpb=0844af35eb9a4843fbf7053ca37f9f69bbafdcb1 diff --git a/emacs/notmuch.el b/emacs/notmuch.el index 9da8df4d..c98a4feb 100644 --- a/emacs/notmuch.el +++ b/emacs/notmuch.el @@ -638,6 +638,7 @@ of the result." (exit-status (process-exit-status proc)) (never-found-target-thread nil)) (when (memq status '(exit signal)) + (catch 'return (kill-buffer (process-get proc 'parse-buf)) (if (buffer-live-p buffer) (with-current-buffer buffer @@ -648,17 +649,26 @@ of the result." (if (eq status 'signal) (insert "Incomplete search results (search process was killed).\n")) (when (eq status 'exit) - (insert "End of search results.") - (unless (= exit-status 0) - (insert (format " (process returned %d)" exit-status))) - (insert "\n") + (insert "End of search results.\n") + ;; For version mismatch, there's no point in + ;; showing the search buffer + (when (or (= exit-status 20) (= exit-status 21)) + (kill-buffer)) + (condition-case err + (notmuch-check-async-exit-status proc msg) + ;; Suppress the error signal since strange + ;; things happen if a sentinel signals. Mimic + ;; the top-level's handling of error messages. + (error + (message "%s" (second err)) + (throw 'return nil))) (if (and atbob (not (string= notmuch-search-target-thread "found"))) (set 'never-found-target-thread t))))) (when (and never-found-target-thread notmuch-search-target-line) (goto-char (point-min)) - (forward-line (1- notmuch-search-target-line)))))))) + (forward-line (1- notmuch-search-target-line))))))))) (defcustom notmuch-search-line-faces '(("unread" :weight bold) ("flagged" :foreground "blue")) @@ -932,7 +942,7 @@ Other optional parameters are used as follows: (let ((proc (start-process "notmuch-search" buffer notmuch-command "search" - "--format=json" + "--format=json" "--format-version=1" (if oldest-first "--sort=oldest-first" "--sort=newest-first")