diff --git a/packages/utils/src/lib.rs b/packages/utils/src/lib.rs index 4384403..1ac2bf1 100644 --- a/packages/utils/src/lib.rs +++ b/packages/utils/src/lib.rs @@ -12,14 +12,12 @@ use tendermint::merkle::proof::ProofOps; pub fn convert_tm_to_ics_merkle_proof( tm_proof: &ProofOps, ) -> Result { - let mut proofs = Vec::new(); - - for op in &tm_proof.ops { - let mut parsed = CommitmentProof { proof: None }; + let mut proofs = Vec::with_capacity(tm_proof.ops.len()); + for (i, op) in tm_proof.ops.iter().enumerate() { + let mut parsed = CommitmentProof::default(); prost::Message::merge(&mut parsed, op.data.as_slice())?; - - proofs.push(parsed); + proofs[i] = parsed; } Ok(MerkleProof { proofs })