Pārlūkot izejas kodu

dao: small simplification

zero 2 gadi atpakaļ
vecāks
revīzija
d5faf7296a
1 mainītis faili ar 4 papildinājumiem un 3 dzēšanām
  1. 4 3
      src/contract/dao/src/entrypoint/auth_xfer.rs

+ 4 - 3
src/contract/dao/src/entrypoint/auth_xfer.rs

@@ -183,11 +183,12 @@ pub(crate) fn dao_authxfer_process_instruction(
     let proposal_coins: Vec<Coin> = deserialize(&auth_call.unwrap().auth_data[..])?;
 
     // Check all the outputs except the last match
-    let send_outs = xfer_params.outputs.split_last().unwrap().1;
-    if send_outs.len() != proposal_coins.len() {
+    // There is the additional DAO change output which is always last.
+    let outs = xfer_params.outputs;
+    if outs.len() != proposal_coins.len() + 1 {
         return Err(DaoError::AuthXferWrongNumberOutputs.into())
     }
-    for (output, coin) in send_outs.iter().zip(proposal_coins.iter()) {
+    for (output, coin) in outs.iter().zip(proposal_coins.iter()) {
         if output.coin != *coin {
             return Err(DaoError::AuthXferWrongOutputCoin.into())
         }