[PATCH] emacs: set query-context to nil if its "" or "*"

classic Classic list List threaded Threaded
2 messages Options
Jani Nikula Jani Nikula
Reply | Threaded
Open this post in threaded view
|

[PATCH] emacs: set query-context to nil if its "" or "*"

The queries "" and "*" are special cased in the notmuch library to
match all messages, but only if they're the entire query. They can't
be combined with other queries, such as "* AND foo", in which case
they "leak" down to the Xapian query parser.

Notmuch show and tree buffers inadvertently combine the thread query
with said special queries, causing incorrect collapsing of
messages. Handle the special queries specially. We already do a
similar thing in notmuch-search-filter.
---
 emacs/notmuch-show.el | 4 +++-
 emacs/notmuch-tree.el | 4 +++-
 2 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/emacs/notmuch-show.el b/emacs/notmuch-show.el
index 1cbcc132030a..cd901e471930 100644
--- a/emacs/notmuch-show.el
+++ b/emacs/notmuch-show.el
@@ -1260,7 +1260,9 @@ matched."
     ;; aren't wiped out.
     (setq notmuch-show-thread-id thread-id
   notmuch-show-parent-buffer parent-buffer
-  notmuch-show-query-context query-context
+  notmuch-show-query-context (if (or (string= query-context "")
+     (string= query-context "*"))
+ nil query-context)
 
   notmuch-show-process-crypto notmuch-crypto-process-mime
   ;; If `elide-toggle', invert the default value.
diff --git a/emacs/notmuch-tree.el b/emacs/notmuch-tree.el
index 022525aec0f5..220395e712bd 100644
--- a/emacs/notmuch-tree.el
+++ b/emacs/notmuch-tree.el
@@ -897,7 +897,9 @@ the same as for the function notmuch-tree."
   (notmuch-tree-mode)
   (add-hook 'post-command-hook #'notmuch-tree-command-hook t t)
   (setq notmuch-tree-basic-query basic-query)
-  (setq notmuch-tree-query-context query-context)
+  (setq notmuch-tree-query-context (if (or (string= query-context "")
+   (string= query-context "*"))
+       nil query-context))
   (setq notmuch-tree-target-msg target)
   (setq notmuch-tree-open-target open-target)
   ;; Set the default value for `notmuch-show-process-crypto' in this
--
2.11.0

_______________________________________________
notmuch mailing list
[hidden email]
https://notmuchmail.org/mailman/listinfo/notmuch
David Bremner-2 David Bremner-2
Reply | Threaded
Open this post in threaded view
|

Re: [PATCH] emacs: set query-context to nil if its "" or "*"

Jani Nikula <[hidden email]> writes:
> Notmuch show and tree buffers inadvertently combine the thread query
> with said special queries, causing incorrect collapsing of
> messages. Handle the special queries specially. We already do a
> similar thing in notmuch-search-filter.

pushed

d
_______________________________________________
notmuch mailing list
[hidden email]
https://notmuchmail.org/mailman/listinfo/notmuch