From 081539110b70bf7e1348268bef7c1d1d12aa215c Mon Sep 17 00:00:00 2001 From: Kyle M Hall Date: Thu, 14 Apr 2022 06:50:20 -0400 Subject: [PATCH] Bug 30541 - Resolve return claim works but "hangs" if MarkLostItemsAsReturned is set for return claims Basically, if MarkLostItemsAsReturned is set for return claims, the code will crash while trying to pull the checkout so it can update the lost status of the item. This is because the code assumes there must be a checkout and never checks the old_checkouts table. This bug appears to only exist in 21.05 at this time. It was fixed by a combination of bugs 29495 and 28588. Test Plan: 1) Set MarkLostItemsAsReturned for return claims 2) Mark a checkout as claims returned 3) Verify the checkout is no longer on the patron record 4) Resolve the claim 5) Note the attempt "hangs" but refreshing the page shows it worked 6) Apply this patch, restart all the things! 7) Repeat steps 2-4 8) It works! Signed-off-by: Andrew Fuerste-Henry Signed-off-by: Christine Lee Signed-off-by: Martin Renvoize Signed-off-by: Andrew Fuerste-Henry --- Koha/Checkouts/ReturnClaim.pm | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/Koha/Checkouts/ReturnClaim.pm b/Koha/Checkouts/ReturnClaim.pm index c95c099a44..3f20e0c236 100644 --- a/Koha/Checkouts/ReturnClaim.pm +++ b/Koha/Checkouts/ReturnClaim.pm @@ -73,8 +73,12 @@ sub checkout { my ($self) = @_; my $checkout_rs = $self->_result->checkout; - return unless $checkout_rs; - return Koha::Checkout->_new_from_dbic($checkout_rs); + return Koha::Checkout->_new_from_dbic($checkout_rs) + if $checkout_rs; + + $checkout_rs = $self->_result->old_checkout; + return Koha::Old::Checkout->_new_from_dbic($checkout_rs) + if $checkout_rs; } =head3 old_checkout -- 2.39.5