]> Untitled Git - bdk/commitdiff
better derivation path building
authordavemo88 <david@kasofsk.xyz>
Fri, 12 Mar 2021 02:54:00 +0000 (21:54 -0500)
committerdavemo88 <david@kasofsk.xyz>
Fri, 12 Mar 2021 02:54:00 +0000 (21:54 -0500)
src/wallet/signer.rs

index 3ff02425040e83660a5a1f4443457282982f6856..16f9af30f08e1c689badf26f36906cc78203adf7 100644 (file)
@@ -225,18 +225,8 @@ impl Signer for DescriptorXKey<ExtendedPrivKey> {
         let derived_key = match self.origin.clone() {
             Some((_fingerprint, origin_path)) => {
                 let deriv_path = DerivationPath::from(
-                    full_path
-                        .into_iter()
-                        .enumerate()
-                        .filter_map(|(i, child)| {
-                            if i >= origin_path.len() {
-                                Some(child)
-                            } else {
-                                None
-                            }
-                        })
-                        .cloned()
-                        .collect::<Vec<ChildNumber>>(),
+                    &full_path.into_iter().cloned().collect::<Vec<ChildNumber>>()
+                        [origin_path.len()..],
                 );
                 self.xkey.derive_priv(&secp, &deriv_path).unwrap()
             }