Allow BibCommon::title_is_empty to accept a bre id or bre object. user/dyrcona/BibCommon-title_is_empty-obj-or-id
authorJason Stephenson <jstephenson@mvlc.org>
Wed, 30 Oct 2013 15:05:45 +0000 (11:05 -0400)
committerJason Stephenson <jstephenson@mvlc.org>
Wed, 30 Oct 2013 15:18:44 +0000 (11:18 -0400)
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>
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(