From: William Morgan Date: Fri, 25 Jan 2008 02:48:44 +0000 (-0800) Subject: bugfix: hidden threads don't actually reappear when asked to unhide X-Git-Url: https://git.notmuchmail.org/git?a=commitdiff_plain;h=81794a14968410f70ee0563afcf3b1e7e90be101;p=sup bugfix: hidden threads don't actually reappear when asked to unhide In ThreadIndexMode, the logic was a little wrong. @hidden_threads isn't keyed by Messages but by Threads, and for incoming messages that may belong to a thread, it's necessary to find the corresponding thread first. This was resulting in threads that had been archived in inbox-mode not reappearing when new messages that belonged to them arrived. --- diff --git a/lib/sup/modes/thread-index-mode.rb b/lib/sup/modes/thread-index-mode.rb index 7686098..0809d54 100644 --- a/lib/sup/modes/thread-index-mode.rb +++ b/lib/sup/modes/thread-index-mode.rb @@ -513,14 +513,12 @@ EOS protected def add_or_unhide m - if @hidden_threads[m] - @hidden_threads.delete m - ## now it will re-appear when #update is called - else - @ts_mutex.synchronize do - return unless is_relevant?(m) || @ts.is_relevant?(m) + @ts_mutex.synchronize do + if (is_relevant?(m) || @ts.is_relevant?(m)) && !@ts.contains?(m) @ts.load_thread_for_message m end + + @hidden_threads.delete @ts.thread_for(m) end update