From a915fba9cf3f3437a3b71feed1aa310aa3272330 Mon Sep 17 00:00:00 2001 From: Kyle M Hall Date: Thu, 3 Dec 2020 09:10:30 -0500 Subject: [PATCH] Bug 27145: Rethrow all other exceptions Bug 14708 introduced a try catch around $patron->delete in commit: "Bug 14708: (QA follow-up) Use try/catch blocks when calling" However, in the catch block it only assumes the exception was from trying to delete anonymous patron when it can be anything else as well, the code should be modified so that it will handle the anonymous patron case and if it is anything else we log the other exception. Signed-off-by: Martin Renvoize --- members/deletemem.pl | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/members/deletemem.pl b/members/deletemem.pl index 02e3714c75..4b31e1d76a 100755 --- a/members/deletemem.pl +++ b/members/deletemem.pl @@ -132,8 +132,14 @@ if ( $op eq 'delete_confirm' or $countissues > 0 or $debits or $is_guarantor ) { try { $patron->delete; print $input->redirect("/cgi-bin/koha/members/members-home.pl"); - } catch { - print $input->redirect("/cgi-bin/koha/members/moremember.pl?borrowernumber=$member&error=CANT_DELETE_ANONYMOUS_PATRON"); + } + catch { + if ( $_->isa('Koha::Exceptions::Patron::FailedDeleteAnonymousPatron') ) { + print $input->redirect("/cgi-bin/koha/members/moremember.pl?borrowernumber=$member&error=CANT_DELETE_ANONYMOUS_PATRON"); + } + else { + $_->rethrow; + } }; # TODO Tell the user everything went ok exit 0; # Exit without error -- 2.20.1