From 4f49dc5ad05289820916c6fd879e70f3adeee253 Mon Sep 17 00:00:00 2001 From: Colin Campbell Date: Sat, 17 Sep 2011 12:45:09 +0100 Subject: [PATCH] Bug 6877 - use is executed and errors at compile time Although use is being called in an eval it will still be executed at compile time so that an error can cause the script to abort before the eval is executed. The eval expression syntax is not checked so eval block should be preferred. Use require/import which execute at runtime which is the intention here. Signed-off-by: Chris Cormack Signed-off-by: Paul Poulain checked that, with Libravatar OK things are still OK --- opac/opac-detail.pl | 11 ++++++++--- opac/opac-showreviews.pl | 11 ++++++++--- 2 files changed, 16 insertions(+), 6 deletions(-) diff --git a/opac/opac-detail.pl b/opac/opac-detail.pl index e2fb0691cd..f82dde2c2b 100755 --- a/opac/opac-detail.pl +++ b/opac/opac-detail.pl @@ -603,9 +603,14 @@ $template->param( ); my $libravatar_enabled = 0; -eval 'use Libravatar::URL'; -if (!$@ and C4::Context->preference('ShowReviewer') and C4::Context->preference('ShowReviewerPhoto')) { - $libravatar_enabled = 1; +if ( C4::Context->preference('ShowReviewer') and C4::Context->preference('ShowReviewerPhoto')) { + eval { + require Libravatar::URL; + Libravatar::URL->import(); + }; + if (!$@ ) { + $libravatar_enabled = 1; + } } my $reviews = getreviews( $biblionumber, 1 ); diff --git a/opac/opac-showreviews.pl b/opac/opac-showreviews.pl index 3a74270dbe..24ac312768 100755 --- a/opac/opac-showreviews.pl +++ b/opac/opac-showreviews.pl @@ -66,9 +66,14 @@ if($format eq "rss"){ } my $libravatar_enabled = 0; -eval 'use Libravatar::URL'; -if (!$@ and C4::Context->preference('ShowReviewer') and C4::Context->preference('ShowReviewerPhoto')) { - $libravatar_enabled = 1; +if ( C4::Context->preference('ShowReviewer') and C4::Context->preference('ShowReviewerPhoto')) { + eval { + require Libravatar::URL; + Libravatar::URL->import(); + }; + if ( !$@ ) { + $libravatar_enabled = 1; + } } my $reviews = getallreviews(1,$offset,$results_per_page); -- 2.20.1