From 615f3f579197f57d9ac22840e3272b2f34602736 Mon Sep 17 00:00:00 2001
From: librelois <c@elo.tf>
Date: Sat, 4 Jun 2022 13:50:54 +0200
Subject: [PATCH] fix(wot): membership revocation should not trigger identity
 removal

---
 pallets/duniter-wot/src/lib.rs | 16 ++++------------
 1 file changed, 4 insertions(+), 12 deletions(-)

diff --git a/pallets/duniter-wot/src/lib.rs b/pallets/duniter-wot/src/lib.rs
index 6a716b715..eda6693c7 100644
--- a/pallets/duniter-wot/src/lib.rs
+++ b/pallets/duniter-wot/src/lib.rs
@@ -222,10 +222,6 @@ where
             }
             sp_membership::Event::<IdtyIndex, MetaData>::MembershipExpired(idty_index)
             | sp_membership::Event::<IdtyIndex, MetaData>::MembershipRevoked(idty_index) => {
-                Self::dispath_idty_call(pallet_identity::Call::remove_identity {
-                    idty_index: *idty_index,
-                    idty_name: None,
-                });
                 if !T::IsSubWot::get() {
                     WotDiffs::<T, I>::append(WotDiff::DisableNode(*idty_index));
                 }
@@ -339,14 +335,10 @@ impl<T: Config<I>, I: 'static> pallet_certification::traits::OnRemovedCert<IdtyI
             && pallet_membership::Pallet::<T, I>::is_member(&receiver)
         {
             // Revoke receiver membership and disable their identity
-            if let Err(e) = pallet_membership::Pallet::<T, I>::revoke_membership(
-                RawOrigin::Root.into(),
-                Some(receiver),
-            ) {
-                sp_std::if_std! {
-                    println!("fail to revoke membership: {:?}", e)
-                }
-            }
+            Self::dispath_idty_call(pallet_identity::Call::remove_identity {
+                idty_index: receiver,
+                idty_name: None,
+            });
         }
         if !T::IsSubWot::get() {
             WotDiffs::<T, I>::append(WotDiff::DelLink(issuer, receiver));
-- 
GitLab