aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndrew G Cohen2024-04-08 07:36:17 +0800
committerAndrew G Cohen2024-05-10 08:39:35 +0800
commitd335f28aa9bfb85d0e35b838ca867d97ebe5b974 (patch)
treeb527c93f739f1be54225bc28b8fded71dfa6f848
parent006d5b70f343d95c7154632a2b59056d940018d5 (diff)
downloademacs-d335f28aa9bfb85d0e35b838ca867d97ebe5b974.tar.gz
emacs-d335f28aa9bfb85d0e35b838ca867d97ebe5b974.zip
Don't limit gnus thread searches to a single message
* lisp/gnus/gnus-search.el (gnus-search-single-p): Searches for a single message id finish after finding this one message; thread searches continue until all messages are found.
-rw-r--r--lisp/gnus/gnus-search.el9
1 files changed, 5 insertions, 4 deletions
diff --git a/lisp/gnus/gnus-search.el b/lisp/gnus/gnus-search.el
index a967d6d71da..9cff2e2f109 100644
--- a/lisp/gnus/gnus-search.el
+++ b/lisp/gnus/gnus-search.el
@@ -1002,10 +1002,11 @@ Responsible for handling and, or, and parenthetical expressions.")
1002 1002
1003(defsubst gnus-search-single-p (query) 1003(defsubst gnus-search-single-p (query)
1004 "Return t if QUERY is a search for a single message." 1004 "Return t if QUERY is a search for a single message."
1005 (let ((q (alist-get 'parsed-query query))) 1005 (unless (alist-get 'thread query)
1006 (and (= (length q ) 1) 1006 (let ((q (alist-get 'parsed-query query)))
1007 (consp (car-safe q)) 1007 (and (= (length q ) 1)
1008 (eq (caar q) 'id)))) 1008 (consp (car-safe q))
1009 (eq (caar q) 'id)))))
1009 1010
1010(cl-defmethod gnus-search-transform ((engine gnus-search-engine) 1011(cl-defmethod gnus-search-transform ((engine gnus-search-engine)
1011 (query list)) 1012 (query list))