From: Thomas Berezansky Date: Wed, 13 Jun 2012 14:12:05 +0000 (-0400) Subject: Fix in-transit hold retarget X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=87994668254d199213d51a2cb8b6db0532f67e48;p=Evergreen.git Fix in-transit hold retarget Tell the abort transit function to not commit our editor on us, basically. Signed-off-by: Thomas Berezansky Signed-off-by: Lebbeous Fogle-Weekley --- diff --git a/Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm b/Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm index 5332eabe1f..525bd7bdd0 100644 --- a/Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm +++ b/Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm @@ -1668,7 +1668,7 @@ sub _reset_hold { my $trans = $e->retrieve_action_transit_copy($transid); if( $trans ) { $logger->info("Aborting transit [$transid] on hold [$hid] reset..."); - my $evt = OpenILS::Application::Circ::Transit::__abort_transit($e, $trans, $copy, 1); + my $evt = OpenILS::Application::Circ::Transit::__abort_transit($e, $trans, $copy, 1, 1); $logger->info("Transit abort completed with result $evt"); unless ("$evt" eq 1) { $e->rollback; diff --git a/Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Transit.pm b/Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Transit.pm index aa3d0448ca..6585167a14 100644 --- a/Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Transit.pm +++ b/Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Transit.pm @@ -219,7 +219,7 @@ sub abort_transit { sub __abort_transit { - my( $e, $transit, $copy, $no_reset_hold ) = @_; + my( $e, $transit, $copy, $no_reset_hold, $no_commit ) = @_; my $evt; my $hold; @@ -251,7 +251,7 @@ sub __abort_transit { return $e->event unless $e->delete_action_transit_copy($transit); return $e->event unless $e->update_asset_copy($copy); - $e->commit; + $e->commit unless $no_commit; # if this is a hold transit, un-capture/un-target the hold if($holdtransit and !$no_reset_hold) {