[Koha-patches] [PATCH] fix various warnings

Galen Charlton galen.charlton at liblime.com
Wed Apr 8 22:34:45 CEST 2009


* Use of uninitialized value in pattern match (m//) at C4/Biblio.pm line 1305
  (displaying MARC21 856s that don't have $3)
* Use of uninitialized value in multiplication (*) at catalogue/detail.pl line 243.
  (attemping to calculate average Amazon rating if no Amazon info
   is available)
* opac-detail.pl: Use of uninitialized value in length at C4/External/Amazon.pm line 90
  (attempting to calculate length of $isbn if it happens to be undef)
---
 C4/Biblio.pm          |    2 +-
 C4/External/Amazon.pm |    2 +-
 catalogue/detail.pl   |    2 +-
 opac/opac-detail.pl   |    2 +-
 4 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/C4/Biblio.pm b/C4/Biblio.pm
index 27eebe9..d5028d2 100644
--- a/C4/Biblio.pm
+++ b/C4/Biblio.pm
@@ -1302,7 +1302,7 @@ sub GetMarcUrls {
                 };
                 $marcurl->{'linktext'} = $link || $s3 || C4::Context->preference('URLLinkText') || $url;
                 $marcurl->{'part'} = $s3 if ($link);
-                $marcurl->{'toc'} = 1 if ( $s3 =~ /^[Tt]able/ );
+                $marcurl->{'toc'} = 1 if ( defined($s3) && $s3 =~ /^[Tt]able/ );
             } else {
                 $marcurl->{'linktext'} = $field->subfield('2') || C4::Context->preference('URLLinkText') || $url;
                 $marcurl->{'MARCURL'} = $url;
diff --git a/C4/External/Amazon.pm b/C4/External/Amazon.pm
index a0c922f..4c64e9d 100644
--- a/C4/External/Amazon.pm
+++ b/C4/External/Amazon.pm
@@ -87,7 +87,7 @@ sub get_amazon_details {
     # warn "ISBN: $isbn | UPC: $upc | EAN: $ean";
 
     my ( $id_type, $item_id);
-    if (length($isbn) eq 13) { # if the isbn is 13-digit, search Amazon using EAN
+    if (defined($isbn) && length($isbn) == 13) { # if the isbn is 13-digit, search Amazon using EAN
 	$id_type = 'EAN';
 	$item_id = $isbn;
     }
diff --git a/catalogue/detail.pl b/catalogue/detail.pl
index e0f5694..4529064 100755
--- a/catalogue/detail.pl
+++ b/catalogue/detail.pl
@@ -238,7 +238,7 @@ if ( C4::Context->preference("AmazonEnabled") == 1 ) {
         }
     }
     my $editorial_reviews = \@{$amazon_details->{Items}->{Item}->{EditorialReviews}->{EditorialReview}};
-    my $average_rating = $amazon_details->{Items}->{Item}->{CustomerReviews}->{AverageRating};
+    my $average_rating = $amazon_details->{Items}->{Item}->{CustomerReviews}->{AverageRating} || 0;
     $template->param( AmazonSimilarItems => $similar_products_exist );
     $template->param( amazon_average_rating => $average_rating * 20);
     $template->param( AMAZON_CUSTOMER_REVIEWS    => $customer_reviews );
diff --git a/opac/opac-detail.pl b/opac/opac-detail.pl
index 992e236..69036a2 100755
--- a/opac/opac-detail.pl
+++ b/opac/opac-detail.pl
@@ -286,7 +286,7 @@ if ( C4::Context->preference("OPACAmazonEnabled") && C4::Context->preference("OP
         }
     }
     my $editorial_reviews = \@{$amazon_details->{Items}->{Item}->{EditorialReviews}->{EditorialReview}};
-    my $average_rating = $amazon_details->{Items}->{Item}->{CustomerReviews}->{AverageRating};
+    my $average_rating = $amazon_details->{Items}->{Item}->{CustomerReviews}->{AverageRating} || 0;
     $template->param( OPACAmazonSimilarItems => $similar_products_exist );
     $template->param( amazon_average_rating => $average_rating * 20);
     $template->param( AMAZON_CUSTOMER_REVIEWS    => $customer_reviews );
-- 
1.5.6.5




More information about the Koha-patches mailing list