diff --git a/pallets/membership/src/lib.rs b/pallets/membership/src/lib.rs index 1dc2c7ee876bf807c720a853bd96ceb036619dfc..af1e859d20638bdf9a81d81579350ca352d67dc5 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