From 96c0ce28f8288773870bff5a6ef1c43ff3a931f8 Mon Sep 17 00:00:00 2001 From: Austin Clements Date: Thu, 24 Oct 2013 11:19:11 -0400 Subject: emacs: Fix search tagging races This fixes races in thread-local and global tagging in notmuch-search (e.g., "+", "-", "a", "*", etc.). Previously, these would modify tags of new messages that arrived after the search. Now they only operate on the messages that were in the threads when the search was performed. This prevents surprises like archiving messages that arrived in a thread after the search results were shown. This eliminates `notmuch-search-find-thread-id-region(-search)' because these functions strongly encouraged racy usage. This fixes the two broken tests added by the previous patch. --- devel/TODO | 5 ----- 1 file changed, 5 deletions(-) (limited to 'devel') diff --git a/devel/TODO b/devel/TODO index f2124834..1cf4089f 100644 --- a/devel/TODO +++ b/devel/TODO @@ -14,11 +14,6 @@ sender's name containing ';' which causes emacs to drop a search result.) This may require removing the outer array from the current "notmuch search --format=json" results. -Fix '*' to work by simply calling '+' or '-' on a region consisting of -the entire buffer, (this would avoid one race condition---while still -leaving other race conditions---but could also potentially make '*' a -very expensive operation). - Add a global keybinding table for notmuch, and then view-specific tables that add to it. -- cgit v1.2.3