From db580fd704e0932918cd80716f25c61ebebfdcb7 Mon Sep 17 00:00:00 2001 From: Dobrica Pavlinusic Date: Thu, 17 Jul 2014 12:27:55 +0200 Subject: [PATCH] [PASSED QA] Bug 12593 - search facets die with regex error if biblio has square brackets in fields It's quite common to have [something] within facet data, and it produces following error: Unmatched [ in regex; marked by <-- HERE in m/^[ <-- HERE This problem was intoduced in Bug 12151 but is trivial to fix. Signed-off-by: Tomas Cohen Arazi Good catch. To test: - Created a bibliographic record, linked to an authority record (personal name). Did a search that returned the author as a facet. - Added a [ symbol to the author name. - Repeated the search => FAIL: "Unmatched [ in regex; marked by <-- HERE in m/^[ <-- HERE" - Apply the patch - Retry the search => SUCCESS: No error, bracket shows correctly. Passes koha-qa.pl too. Signed-off-by: Kyle M Hall --- C4/Search.pm | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/C4/Search.pm b/C4/Search.pm index 1b5c6fa..219de1e 100644 --- a/C4/Search.pm +++ b/C4/Search.pm @@ -532,7 +532,7 @@ sub getRecords { foreach my $field (@fields) { my $data = $field->as_string( $subfield_letters, $facet->{sep} ); - unless ( grep { /^$data$/ } @used_datas ) { + unless ( grep { /^\Q$data\E$/ } @used_datas ) { push @used_datas, $data; $facets_counter->{ $facet->{idx} }->{$data}++; } -- 1.7.2.5