From 081790295661662f3d1f22673b1c44eee030fddb Mon Sep 17 00:00:00 2001 From: Owen Leonard Date: Wed, 7 Dec 2011 10:50:06 -0500 Subject: [PATCH] Bug 7330 - System preferences editor generates errors in the log with each search Adding a check for an empty value in a couple of places which seem to always get one. As far as I can tell these places in the script are looping over ALL the data in the pref files, and sometimes an empty value comes through. I wonder if this is because of a minor syntax error in the pref file? My correction is a stab in the dark since I haven't determined where the empty value is actually coming from. This change quiets the errors in the log and doesn't seem to affect preference search results. Signed-off-by: Liz Rea No more messages in the logs. Yay! Ran unit tests on this (t, xt/author, xt, t/db_dependent)- nothing out of the ordinary in any. Signed-off-by: Paul Poulain --- admin/preferences.pl | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/admin/preferences.pl b/admin/preferences.pl index 055f69dc98..0dcec19fe6 100755 --- a/admin/preferences.pl +++ b/admin/preferences.pl @@ -216,6 +216,7 @@ sub SearchPrefs { foreach my $piece ( @$line ) { if ( ref( $piece ) eq 'HASH' ) { + if ( !$piece->{'pref'} ){ next; } if ( $piece->{'pref'} =~ /^$searchfield$/i ) { my ( undef, $LINES ) = TransformPrefsToHTML( $data, $searchfield ); @@ -249,7 +250,7 @@ sub SearchPrefs { sub matches { my ( $text, $terms ) = @_; - return !grep( { $text !~ /$_/i } @$terms ); + if ( $text ) { return !grep( { $text !~ /$_/i } @$terms ); } } my $dbh = C4::Context->dbh; -- 2.39.5