Skip to content

Commit 40d0a73

Browse files
committed
feat: reset team on start_refund
1 parent cc4475c commit 40d0a73

1 file changed

Lines changed: 16 additions & 2 deletions

File tree

  • pallets/pallet-bonded-coins/src

pallets/pallet-bonded-coins/src/lib.rs

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1428,8 +1428,10 @@ pub mod pallet {
14281428
Error::<T>::NothingToRefund
14291429
);
14301430

1431-
let has_holders = pool_details
1432-
.bonded_currencies
1431+
// cloning here lets us avoid cloning the pool details later
1432+
let bonded_currencies = pool_details.bonded_currencies.clone();
1433+
1434+
let has_holders = bonded_currencies
14331435
.iter()
14341436
.any(|asset_id| T::Fungibles::total_issuance(asset_id.clone()) > FungiblesBalanceOf::<T>::zero());
14351437
// no token holders to refund
@@ -1440,6 +1442,18 @@ pub mod pallet {
14401442
new_pool_details.state.start_refund();
14411443
Pools::<T>::set(&pool_id, Some(new_pool_details));
14421444

1445+
// reset team on currencies to avoid unexpected burns etc.
1446+
let pool_account = pool_id.clone().into();
1447+
for asset_id in bonded_currencies {
1448+
T::Fungibles::reset_team(
1449+
asset_id,
1450+
pool_account.clone(),
1451+
pool_account.clone(),
1452+
pool_account.clone(),
1453+
pool_account.clone(),
1454+
)?;
1455+
}
1456+
14431457
Self::deposit_event(Event::RefundingStarted { id: pool_id });
14441458

14451459
Ok(n_currencies)

0 commit comments

Comments
 (0)