Fix to at least bitcoin ^0.25.2
And fix the fallout.
This commit is contained in:
@@ -462,7 +462,13 @@ impl DescriptorMeta for Descriptor<DescriptorPublicKey> {
|
||||
{
|
||||
Some(self.clone())
|
||||
}
|
||||
Descriptor::Bare(ms) | Descriptor::Sh(ms)
|
||||
Descriptor::Bare(ms)
|
||||
if psbt_input.redeem_script.is_some()
|
||||
&& &ms.encode(deriv_ctx) == psbt_input.redeem_script.as_ref().unwrap() =>
|
||||
{
|
||||
Some(self.clone())
|
||||
}
|
||||
Descriptor::Sh(ms)
|
||||
if psbt_input.redeem_script.is_some()
|
||||
&& &ms.encode(deriv_ctx) == psbt_input.redeem_script.as_ref().unwrap() =>
|
||||
{
|
||||
|
||||
@@ -820,9 +820,8 @@ impl ExtractPolicy for Descriptor<DescriptorPublicKey> {
|
||||
| Descriptor::Pkh(pubkey)
|
||||
| Descriptor::Wpkh(pubkey)
|
||||
| Descriptor::ShWpkh(pubkey) => Ok(Some(signature(pubkey, signers, secp))),
|
||||
Descriptor::Bare(inner) | Descriptor::Sh(inner) => {
|
||||
Ok(inner.extract_policy(signers, secp)?)
|
||||
}
|
||||
Descriptor::Bare(inner) => Ok(inner.extract_policy(signers, secp)?),
|
||||
Descriptor::Sh(inner) => Ok(inner.extract_policy(signers, secp)?),
|
||||
Descriptor::Wsh(inner) | Descriptor::ShWsh(inner) => {
|
||||
Ok(inner.extract_policy(signers, secp)?)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user