From abdff04e730541cbd9627696b55e48f12f7dc32b 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 Content-Type: text/plain; charset="utf-8" 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. --- 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 e18e046..d344c24 100755 --- a/opac/opac-detail.pl +++ b/opac/opac-detail.pl @@ -299,9 +299,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 3a74270..24ac312 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); -- 1.7.6.2