From 103c54b7fcdcfa6a43438c355c68456e2b06eba2 Mon Sep 17 00:00:00 2001 From: Colin Campbell Date: Tue, 17 Jan 2012 14:46:09 +0000 Subject: [PATCH] Bug 7454 Initialize return arrays in ILS/Transaction/RenewAll Explicitly clear these arrays and update them directly. In practice item numbers were already in them when called so that more items were being returned than were actually renewed (or failed) Signed-off-by: Chris Cormack Functionally sound patch, and tested in production Signed-off-by: Paul Poulain Signed-off-by: Jared Camins-Esakov --- C4/SIP/ILS/Transaction/RenewAll.pm | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/C4/SIP/ILS/Transaction/RenewAll.pm b/C4/SIP/ILS/Transaction/RenewAll.pm index a712806896..2e49bf7ed2 100644 --- a/C4/SIP/ILS/Transaction/RenewAll.pm +++ b/C4/SIP/ILS/Transaction/RenewAll.pm @@ -38,6 +38,8 @@ sub do_renew_all { my $patron = $self->{patron}; # SIP's patron my $borrower = GetMember('cardnumber'=>$patron->id); # Koha's patron my $all_ok = 1; + $self->{renewed} = []; + $self->{unrenewed} = []; foreach my $itemx (@{$patron->{items}}) { my $item_id = $itemx->{barcode}; my $item = new ILS::Item $item_id; @@ -52,9 +54,9 @@ sub do_renew_all { $self->do_renew_for($borrower); if ($self->ok) { $item->{due_date} = $self->{due}; - push @{$self->renewed }, $item_id; + push @{$self->{renewed} }, $item_id; } else { - push @{$self->unrenewed}, $item_id; + push @{$self->{unrenewed}}, $item_id; } } $self->ok($all_ok); -- 2.39.5