ISBN variations sanity checks
authorBill Erickson <berickxx@gmail.com>
Wed, 11 Sep 2019 20:32:23 +0000 (16:32 -0400)
committerBill Erickson <berickxx@gmail.com>
Fri, 17 Jan 2020 19:36:02 +0000 (14:36 -0500)
Signed-off-by: Bill Erickson <berickxx@gmail.com>
Open-ILS/src/perlmods/lib/OpenILS/Elastic/Bib/Search.pm

index 9a08ecc..7dfcebf 100644 (file)
@@ -342,10 +342,14 @@ sub index_isbns {
     for my $token (split(/ /, $value)) {
         my $isbn = Business::ISBN->new($token);
         if ($isbn && $isbn->is_valid) {
-            $seen{$isbn->as_isbn10->isbn} = 1;
-            $seen{$isbn->as_isbn10->as_string} = 1;
-            $seen{$isbn->as_isbn13->isbn} = 1;
-            $seen{$isbn->as_isbn13->as_string} = 1;
+            if ($isbn->as_isbn10) {
+                $seen{$isbn->as_isbn10->isbn} = 1;
+                $seen{$isbn->as_isbn10->as_string} = 1;
+            }
+            if ($isbn->as_isbn13) {
+                $seen{$isbn->as_isbn13->isbn} = 1;
+                $seen{$isbn->as_isbn13->as_string} = 1;
+            }
         }
     }