From 5e6f339a9765c5e4e758d6a9a3c2c063a88ac05a Mon Sep 17 00:00:00 2001 From: Shawn Tabrizi Date: Thu, 5 Dec 2019 16:05:54 +0100 Subject: [PATCH] Change order of events emitted from transfer. (#4301) --- substrate/frame/balances/src/lib.rs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/substrate/frame/balances/src/lib.rs b/substrate/frame/balances/src/lib.rs index d32d8551d9..6a3e701ac0 100644 --- a/substrate/frame/balances/src/lib.rs +++ b/substrate/frame/balances/src/lib.rs @@ -934,9 +934,14 @@ where if !>::exists(dest) { Self::new_account(dest, new_to_balance); } + + // Emit transfer event. + Self::deposit_event(RawEvent::Transfer(transactor.clone(), dest.clone(), value, fee)); + + // Take action on the set_free_balance call. + // This will emit events that _resulted_ from the transfer. Self::set_free_balance(dest, new_to_balance); T::TransferPayment::on_unbalanced(NegativeImbalance::new(fee)); - Self::deposit_event(RawEvent::Transfer(transactor.clone(), dest.clone(), value, fee)); } Ok(())