From 4518c70b3f058c88b5ff74798d44c95e3e8bd112 Mon Sep 17 00:00:00 2001 From: Max Kanat-Alexander Date: Thu, 22 Jul 2010 18:48:49 -0700 Subject: Bug 578494: When doing a QuickSearch on a phrase, pass the phrase quoted to the fulltext engine, so that it knows it's a phrase. r=LpSolit, a=mkanat --- Bugzilla/DB.pm | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'Bugzilla/DB.pm') diff --git a/Bugzilla/DB.pm b/Bugzilla/DB.pm index 117c3a7b0..43fcd6e9a 100644 --- a/Bugzilla/DB.pm +++ b/Bugzilla/DB.pm @@ -45,6 +45,7 @@ use Bugzilla::DB::Schema; use List::Util qw(max); use Storable qw(dclone); +use Text::ParseWords qw(shellwords); ##################################################################### # Constants @@ -383,8 +384,9 @@ sub sql_fulltext_search { # make the string lowercase to do case insensitive search my $lower_text = lc($text); - # split the text we search for into separate words - my @words = split(/\s+/, $lower_text); + # split the text we're searching for into separate words, understanding + # quotes. + my @words = shellwords($lower_text); # surround the words with wildcards and SQL quotes so we can use them # in LIKE search clauses -- cgit v1.2.3-24-g4f1b