difftreelog
fix Events for contract sponsoring.
in: master
2 files changed
pallets/evm-contract-helpers/src/eth.rsdiffbeforeafterboth126126127 Pallet::<T>::force_set_sponsor(&T::CrossAccountId::from_eth(caller), contract_address)127 Pallet::<T>::force_set_sponsor(128 &T::CrossAccountId::from_eth(caller),129 contract_address,130 &T::CrossAccountId::from_eth(contract_address),131 )128 .map_err(dispatch_to_evm::<T>)?;132 .map_err(dispatch_to_evm::<T>)?;129133pallets/evm-contract-helpers/src/lib.rsdiffbeforeafterboth--- a/pallets/evm-contract-helpers/src/lib.rs
+++ b/pallets/evm-contract-helpers/src/lib.rs
@@ -219,7 +219,11 @@
/// Set sponsor as already confirmed.
///
/// `sender` must be owner of contract.
- pub fn force_set_sponsor(sender: &T::CrossAccountId, contract: H160) -> DispatchResult {
+ pub fn force_set_sponsor(
+ sender: &T::CrossAccountId,
+ contract: H160,
+ sponsor: &T::CrossAccountId,
+ ) -> DispatchResult {
Pallet::<T>::ensure_owner(contract, *sender.as_eth())?;
Sponsoring::<T>::insert(
contract,
@@ -227,6 +231,34 @@
contract,
)),
);
+
+ let eth_sponsor = *sponsor.as_eth();
+ let sub_sponsor = sponsor.as_sub().clone();
+
+ <Pallet<T>>::deposit_event(Event::<T>::ContractSponsorSet(
+ contract,
+ sub_sponsor.clone(),
+ ));
+ <PalletEvm<T>>::deposit_log(
+ ContractHelpersEvents::ContractSponsorSet {
+ contract,
+ sponsor: eth_sponsor,
+ }
+ .to_log(contract),
+ );
+
+ <Pallet<T>>::deposit_event(Event::<T>::ContractSponsorshipConfirmed(
+ contract,
+ sub_sponsor,
+ ));
+ <PalletEvm<T>>::deposit_log(
+ ContractHelpersEvents::ContractSponsorshipConfirmed {
+ contract,
+ sponsor: eth_sponsor,
+ }
+ .to_log(contract),
+ );
+
Ok(())
}