aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEric Abrahamsen2021-12-04 13:41:23 -0800
committerEric Abrahamsen2021-12-04 13:41:23 -0800
commit2898566fa0db33804cde57a34475e4c32f2f9bf2 (patch)
treebfac04b82bff8908d5bc39eb1b602737e886c27a
parentf247fa5d5ce7cb34f23c979c17b14c5713eb5490 (diff)
downloademacs-2898566fa0db33804cde57a34475e4c32f2f9bf2.tar.gz
emacs-2898566fa0db33804cde57a34475e4c32f2f9bf2.zip
Don't swallow gnus-search errors when creating nnselect groups
* lisp/gnus/gnus-search.el (gnus-search-run-query): Modify condition-case to re-signal any gnus-search related errors; the user should see them. (gnus-search-error): Define a new parent error for all gnus-search errors.
-rw-r--r--lisp/gnus/gnus-search.el10
-rw-r--r--lisp/gnus/nnselect.el4
2 files changed, 11 insertions, 3 deletions
diff --git a/lisp/gnus/gnus-search.el b/lisp/gnus/gnus-search.el
index bce5d57c521..c77de688e66 100644
--- a/lisp/gnus/gnus-search.el
+++ b/lisp/gnus/gnus-search.el
@@ -105,9 +105,13 @@
105 105
106(gnus-add-shutdown #'gnus-search-shutdown 'gnus) 106(gnus-add-shutdown #'gnus-search-shutdown 'gnus)
107 107
108(define-error 'gnus-search-parse-error "Gnus search parsing error") 108(define-error 'gnus-search-error "Gnus search error")
109 109
110(define-error 'gnus-search-config-error "Gnus search configuration error") 110(define-error 'gnus-search-parse-error "Gnus search parsing error"
111 'gnus-search-error)
112
113(define-error 'gnus-search-config-error "Gnus search configuration error"
114 'gnus-search-error)
111 115
112;;; User Customizable Variables: 116;;; User Customizable Variables:
113 117
@@ -1927,7 +1931,7 @@ Assume \"size\" key is equal to \"larger\"."
1927 (apply #'nnheader-message 4 1931 (apply #'nnheader-message 4
1928 "Search engine for %s improperly configured: %s" 1932 "Search engine for %s improperly configured: %s"
1929 server (cdr err)) 1933 server (cdr err))
1930 (signal 'gnus-search-config-error err))))) 1934 (signal (car err) (cdr err))))))
1931 (alist-get 'search-group-spec specs)) 1935 (alist-get 'search-group-spec specs))
1932 ;; Some search engines do their own limiting, but some don't, so 1936 ;; Some search engines do their own limiting, but some don't, so
1933 ;; do it again here. This is bad because, if the user is 1937 ;; do it again here. This is bad because, if the user is
diff --git a/lisp/gnus/nnselect.el b/lisp/gnus/nnselect.el
index ecec705b326..252e9f66838 100644
--- a/lisp/gnus/nnselect.el
+++ b/lisp/gnus/nnselect.el
@@ -779,6 +779,10 @@ Return an article list."
779 (args (alist-get 'nnselect-args specs))) 779 (args (alist-get 'nnselect-args specs)))
780 (condition-case-unless-debug err 780 (condition-case-unless-debug err
781 (funcall func args) 781 (funcall func args)
782 ;; Don't swallow gnus-search errors; the user should be made
783 ;; aware of them.
784 (gnus-search-error
785 (signal (car err) (cdr err)))
782 (error (gnus-error 3 "nnselect-run: %s on %s gave error %s" func args err) 786 (error (gnus-error 3 "nnselect-run: %s on %s gave error %s" func args err)
783 [])))) 787 []))))
784 788