LP#1246371: Allow BibCommon::title_is_empty to accept a bre id or bre object.
authorJason Stephenson <jstephenson@mvlc.org>
Wed, 30 Oct 2013 15:05:45 +0000 (11:05 -0400)
committerGalen Charlton <gmc@esilibrary.com>
Thu, 13 Nov 2014 18:55:11 +0000 (10:55 -0800)
I was trying to delete copies with the record fleshed in the call number
object and got the following error:

Can't use an undefined value as an ARRAY reference at
/usr/local/share/perl/5.14.2/OpenILS/Application/Cat/BibCommon.pm line 399

Having title_is_empty check for a bre object and use its id solved this
problem for me.

Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Open-ILS/src/perlmods/lib/OpenILS/Application/Cat/BibCommon.pm

index ff2c3ab..0e9da73 100644 (file)
@@ -391,6 +391,10 @@ sub delete_rec {
 sub title_is_empty {
     my($class, $editor, $rid, $vol_id) = @_;
 
+    # check if $rid is an object, because may be passing the volume
+    # with a fleshed record in one of our callers.
+    $rid = $rid->id() if (ref($rid));
+
     return 0 if $rid == OILS_PRECAT_RECORD;
 
     my $cnlist = $editor->search_asset_call_number(