--- a/pallets/foreign-assets/src/lib.rs +++ b/pallets/foreign-assets/src/lib.rs @@ -29,7 +29,7 @@ dispatch::CollectionDispatch, erc::CrossAccountId, XcmExtensions, NATIVE_FUNGIBLE_COLLECTION_ID, }; use sp_runtime::traits::AccountIdConversion; -use sp_std::{vec, vec::Vec}; +use sp_std::{boxed::Box, vec, vec::Vec}; use staging_xcm::{ opaque::latest::{prelude::XcmError, Weight}, v3::{prelude::*, MultiAsset, XcmContext}, @@ -98,7 +98,7 @@ /// The foreign asset registered. ForeignAssetRegistered { asset_id: CollectionId, - reserve_location: MultiLocation, + reserve_location: Box, }, } @@ -135,14 +135,14 @@ #[pallet::weight(::WeightInfo::register_foreign_asset())] pub fn force_register_foreign_asset( origin: OriginFor, - reserve_location: MultiLocation, + reserve_location: Box, name: CollectionName, token_prefix: CollectionTokenPrefix, mode: ForeignCollectionMode, ) -> DispatchResult { T::ForceRegisterOrigin::ensure_origin(origin.clone())?; - if >::contains_key(reserve_location) { + if >::contains_key(*reserve_location) { return Err(>::ForeignAssetAlreadyRegistered.into()); } @@ -190,8 +190,8 @@ }, )?; - >::insert(reserve_location, collection_id); - >::insert(collection_id, reserve_location); + >::insert(*reserve_location, collection_id); + >::insert(collection_id, *reserve_location); Self::deposit_event(Event::::ForeignAssetRegistered { asset_id: collection_id,