From 7a6ee77a06064b73bfda0694a28ed34e3b56e653 Mon Sep 17 00:00:00 2001 From: Mark Leighton Fisher Date: Mon, 2 Jul 2012 17:03:58 -0400 Subject: [PATCH] Fixed WebGUI::Asset::Wobject::Search::view() so HTML highlighting not broken by search phrase with unmatched char pairs Fixed WebGUI::Asset::Wobject::Search::view() so HTML highlighting will not be broken by a search phrase with unmatched char pairs like '()', '{}', and '[]' (the HTML highlighter uses a regex internally for matching words in the search phrase). Also fixed so ':' in the search phrase does not confuse the HTML highlighter. --- docs/changelog/7.x.x.txt | 1 + lib/WebGUI/Asset/Wobject/Search.pm | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/docs/changelog/7.x.x.txt b/docs/changelog/7.x.x.txt index 7c9db174d..6d7ae7880 100644 --- a/docs/changelog/7.x.x.txt +++ b/docs/changelog/7.x.x.txt @@ -1,4 +1,5 @@ 7.10.25 + - fixed: #12373: Asset::Wobject::Search::view() so HTML highlite not broken by search phrase with unmatched char pairs - fixed: if user1 adds user2 as a friend, user2 doesn't see user1 as a friend - fixed: data sync bug in WebGUI::User::friends - added: give WebGUI::PseudoRequest a hostname method diff --git a/lib/WebGUI/Asset/Wobject/Search.pm b/lib/WebGUI/Asset/Wobject/Search.pm index 4846e3c4f..709aaacbd 100644 --- a/lib/WebGUI/Asset/Wobject/Search.pm +++ b/lib/WebGUI/Asset/Wobject/Search.pm @@ -199,7 +199,7 @@ sub view { $search->search(\%rules); #Instantiate the highlighter - my @words = grep { $_ ne '' } map { tr/+?*//d; $_; } split(/\s+/,$keywords); + my @words = grep { $_ ne '' } map { tr/+?*:()[]{}//d; $_; } split(/\s+/,$keywords); my @wildcards = map { "%" } @words; my $hl = HTML::Highlight->new( words => \@words,