From 5358cb5386ee6ab4ac0dda71c181188af443d816 Mon Sep 17 00:00:00 2001 From: Marcel de Rooy Date: Mon, 28 Aug 2017 12:13:26 +0200 Subject: [PATCH] Bug 19190: [Follow-up] Do not rely on the return of ModItem Content-Type: text/plain; charset=utf-8 touch_all_items looks at the return of ModItem to determine if the operation was successful. But ModItem does not return a meaningful value. This patch puts the ModItem call in an eval and looks at $@. Test plan: Run touch_all_items with a where condition and verbose option. Put print 1/0; at the end of ModItem. Run touch_all_items again. You should see: ERROR WITH ITEM xxx !!!! Signed-off-by: Marcel de Rooy --- misc/maintenance/touch_all_items.pl | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/misc/maintenance/touch_all_items.pl b/misc/maintenance/touch_all_items.pl index 64c70e3..12dca00 100755 --- a/misc/maintenance/touch_all_items.pl +++ b/misc/maintenance/touch_all_items.pl @@ -79,7 +79,8 @@ $sth_fetch->execute(); # fetch info from the search while (my ($biblionumber, $itemnumber, $itemcallnumber) = $sth_fetch->fetchrow_array){ - my $modok = ModItem({itemcallnumber => $itemcallnumber}, $biblionumber, $itemnumber); + eval { ModItem({itemcallnumber => $itemcallnumber}, $biblionumber, $itemnumber); }; + my $modok = $@ ? 0 : 1; if ($modok) { $goodcount++; -- 2.1.4