diff --git a/rpc/src/chainx/impl_rpc.rs b/rpc/src/chainx/impl_rpc.rs index f0352c38cf4e9..9abb59687ada2 100644 --- a/rpc/src/chainx/impl_rpc.rs +++ b/rpc/src/chainx/impl_rpc.rs @@ -563,10 +563,9 @@ where } if handicap.highest_bid > pair.fluctuation() { info.minimum_offer = handicap.highest_bid - pair.fluctuation(); - }else { - info.minimum_offer = 10_u64.pow(pair.tick_precision);//tick + } else { + info.minimum_offer = 10_u64.pow(pair.tick_precision); //tick } - } pairs.push(info); @@ -650,7 +649,6 @@ where highest_bid - pair.fluctuation() } else { 10_u64.pow(pair.tick_precision) - }; for price in (lowest_offer..=maximum_bid).step_by(tick as usize) { diff --git a/runtime/wasm/target/wasm32-unknown-unknown/release/chainx_runtime.compact.wasm b/runtime/wasm/target/wasm32-unknown-unknown/release/chainx_runtime.compact.wasm index 8eddb933c4293..b86367b69d875 100644 Binary files a/runtime/wasm/target/wasm32-unknown-unknown/release/chainx_runtime.compact.wasm and b/runtime/wasm/target/wasm32-unknown-unknown/release/chainx_runtime.compact.wasm differ diff --git a/xrml/xbridge/bitcoin/src/assets_records.rs b/xrml/xbridge/bitcoin/src/assets_records.rs index d6fa848ebc7c6..f22aad65eb13c 100644 --- a/xrml/xbridge/bitcoin/src/assets_records.rs +++ b/xrml/xbridge/bitcoin/src/assets_records.rs @@ -152,7 +152,7 @@ impl Module { .layout() .to_vec(), ), - ext, + ext: ext.unwrap_or_default(), // op return height_or_time: HeightOrTime::::Timestamp( As::sa(timestamp as u64), diff --git a/xrml/xbridge/bitcoin/src/tx/handler.rs b/xrml/xbridge/bitcoin/src/tx/handler.rs index f7ea93d40de5d..7eb70dbfba9b6 100644 --- a/xrml/xbridge/bitcoin/src/tx/handler.rs +++ b/xrml/xbridge/bitcoin/src/tx/handler.rs @@ -145,21 +145,22 @@ impl TxHandler { }) .expect("must set input addr before; qed"); - let (account_info, deposit_balance, original_opretion) = + let (account_info, deposit_balance, original_opreturn) = parse_deposit_outputs::(&self.tx_info.raw_tx)?; + let original_opreturn = original_opreturn.unwrap_or_default(); debug!( "[deposit]|parse outputs|account_info:{:?}|balance:{:}|opreturn:{:}|", account_info, deposit_balance, - if original_opretion.len() > 2 { + if original_opreturn.len() > 2 { format!( "{:?}|{:}", - original_opretion[..2].to_vec(), - u8array_to_string(&original_opretion[2..]) + original_opreturn[..2].to_vec(), + u8array_to_string(&original_opreturn[2..]) ) } else { - u8array_to_string(&original_opretion) + u8array_to_string(&original_opreturn) } ); @@ -216,7 +217,7 @@ impl TxHandler { xassets::Chain::Bitcoin, Module::::TOKEN.to_vec(), As::sa(deposit_balance), - original_opretion, + original_opreturn, b58::to_base58(input_addr.layout().to_vec()), self.tx_hash.as_bytes().to_vec(), xrecords::TxState::Confirmed, @@ -233,12 +234,12 @@ fn handle_opreturn(script: &[u8], addr_type: u8) -> Option<(T::Account pub fn parse_deposit_outputs( tx: &Transaction, -) -> result::Result<(Option<(T::AccountId, Option)>, u64, Vec), &'static str> { +) -> result::Result<(Option<(T::AccountId, Option)>, u64, Option>), &'static str> { let trustee_address = get_hot_trustee_address::()?; let mut deposit_balance = 0; let mut account_info = None; let mut has_opreturn = false; - let mut original = Vec::new(); + let mut original = None; // parse for output in tx.outputs.iter() { // out script @@ -251,9 +252,7 @@ pub fn parse_deposit_outputs( // OP_CODE PUSH ... (2 BYTES) let addr_type = xsystem::Module::::address_type(); account_info = handle_opreturn::(&script[2..], addr_type); - if account_info.is_some() { - original.extend(script.to_vec()); - } + original = Some(script.to_vec()); has_opreturn = true; } continue;