Companion for substrate #7159 (#1747)

* Companion for paritytech/substrate#7159

Signed-off-by: koushiro <koushiro.cqx@gmail.com>

* update WithdrawReason in xcm

Signed-off-by: koushiro <koushiro.cqx@gmail.com>

* "Update Substrate"

Co-authored-by: parity-processbot <>
This commit is contained in:
Qinxuan Chen
2020-10-29 20:35:58 +08:00
committed by GitHub
parent 724321cd2d
commit 39db0688de
4 changed files with 146 additions and 152 deletions
@@ -17,7 +17,7 @@
use sp_std::{result, convert::TryInto, marker::PhantomData};
use xcm::v0::{Error, Result, MultiAsset, MultiLocation};
use sp_arithmetic::traits::SaturatedConversion;
use frame_support::traits::{ExistenceRequirement::AllowDeath, WithdrawReason};
use frame_support::traits::{ExistenceRequirement::AllowDeath, WithdrawReasons};
use xcm_executor::traits::{MatchesFungible, LocationConversion, TransactAsset};
pub struct CurrencyAdapter<Currency, Matcher, AccountIdConverter, AccountId>(
@@ -48,7 +48,7 @@ impl<
let amount = Matcher::matches_fungible(&what).ok_or(())?.saturated_into();
let who = AccountIdConverter::from_location(who).ok_or(())?;
let balance_amount = amount.try_into().map_err(|_| ())?;
Currency::withdraw(&who, balance_amount, WithdrawReason::Transfer.into(), AllowDeath).map_err(|_| ())?;
Currency::withdraw(&who, balance_amount, WithdrawReasons::TRANSFER, AllowDeath).map_err(|_| ())?;
Ok(what.clone())
}
}