From 0274ab04c3241c3200a9864fc815114433bf7e3a Mon Sep 17 00:00:00 2001 From: Marco Capetta Date: Fri, 10 Mar 2023 10:47:52 +0100 Subject: [PATCH] MT#56776 Fix peer deletion when not enabled Deletion of a disabled peer was not working because panel was trying to get the correspondant ID from the LCR table, while the entry is not there because peer was in fact disabled. To fix it an additional check has been added to evaluate if the peer is enabled or not at the moment of the deletion. Change-Id: I3c488a8711c5f7b486b6c0a3950738fb8689bb07 --- lib/NGCP/Panel/Controller/Peering.pm | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/lib/NGCP/Panel/Controller/Peering.pm b/lib/NGCP/Panel/Controller/Peering.pm index a4d63c2381..952a2ef151 100644 --- a/lib/NGCP/Panel/Controller/Peering.pm +++ b/lib/NGCP/Panel/Controller/Peering.pm @@ -419,10 +419,13 @@ sub servers_edit :Chained('servers_base') :PathPart('edit') :Args(0) { sub servers_delete :Chained('servers_base') :PathPart('delete') :Args(0) { my ($self, $c) = @_; - + try { my $probe = $c->stash->{server_result}->probe; - NGCP::Panel::Utils::Peering::_sip_delete_peer_registration(c => $c); + my $enabled = $c->stash->{server_result}->enabled; + if ($enabled) { + NGCP::Panel::Utils::Peering::_sip_delete_peer_registration(c => $c); + } $c->stash->{server_result}->delete; NGCP::Panel::Utils::Peering::_sip_lcr_reload(c => $c);