From a7ae4e6fafbeb4bd04ffbd039de73a4a34586a4a Mon Sep 17 00:00:00 2001
From: librelois <c@elo.tf>
Date: Mon, 30 May 2022 07:52:01 +0200
Subject: [PATCH] fix(membership): pend mb expi should be applied only if pend
 mb exist

pending mb expiration should be applied only if pending mb exist
Fix #51
---
 pallets/membership/src/lib.rs | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/pallets/membership/src/lib.rs b/pallets/membership/src/lib.rs
index 1dc2c7ee8..af1e859d2 100644
--- a/pallets/membership/src/lib.rs
+++ b/pallets/membership/src/lib.rs
@@ -405,10 +405,12 @@ pub mod pallet {
             let mut total_weight: Weight = 0;
 
             for idty_id in PendingMembershipsExpireOn::<T, I>::take(block_number) {
-                PendingMembership::<T, I>::remove(&idty_id);
-                Self::deposit_event(Event::PendingMembershipExpired(idty_id));
-                total_weight +=
-                    T::OnEvent::on_event(&sp_membership::Event::PendingMembershipExpired(idty_id));
+                if PendingMembership::<T, I>::take(&idty_id).is_some() {
+                    Self::deposit_event(Event::PendingMembershipExpired(idty_id));
+                    total_weight += T::OnEvent::on_event(
+                        &sp_membership::Event::PendingMembershipExpired(idty_id),
+                    );
+                }
             }
 
             total_weight
-- 
GitLab