From: William Morgan Date: Sun, 29 Mar 2009 16:36:54 +0000 (-0700) Subject: bugfix: catch invalid regular expressions in tag-matching X-Git-Url: https://git.cworth.org/git?a=commitdiff_plain;h=e93167f4b73635d28d88226fdbba7ac42373d3df;p=sup bugfix: catch invalid regular expressions in tag-matching --- diff --git a/lib/sup/modes/thread-index-mode.rb b/lib/sup/modes/thread-index-mode.rb index 73144db..0beebaf 100644 --- a/lib/sup/modes/thread-index-mode.rb +++ b/lib/sup/modes/thread-index-mode.rb @@ -424,9 +424,14 @@ EOS end def tag_matching - query = BufferManager.ask :search, "tag threads matching: " + query = BufferManager.ask :search, "tag threads matching (regex): " return if query.nil? || query.empty? - query = /#{query}/i + query = begin + /#{query}/i + rescue RegexpError => e + BufferManager.flash "error interpreting '#{query}': #{e.message}" + return + end @mutex.synchronize { @threads.each { |t| @tags.tag t if thread_matches?(t, query) } } regen_text end