descriptor: Use InferXOnlyPubkey for miniscript XOnly pubkey from script

This commit is contained in:
Ava Chow 2025-01-06 19:10:15 -05:00
parent 4c50c21f6b
commit b4ac48090f

View file

@ -1709,7 +1709,7 @@ struct KeyParser {
if (miniscript::IsTapscript(m_script_ctx) && end - begin == 32) { if (miniscript::IsTapscript(m_script_ctx) && end - begin == 32) {
XOnlyPubKey pubkey; XOnlyPubKey pubkey;
std::copy(begin, end, pubkey.begin()); std::copy(begin, end, pubkey.begin());
if (auto pubkey_provider = InferPubkey(pubkey.GetEvenCorrespondingCPubKey(), ParseContext(), *m_in)) { if (auto pubkey_provider = InferXOnlyPubkey(pubkey, ParseContext(), *m_in)) {
m_keys.emplace_back(); m_keys.emplace_back();
m_keys.back().push_back(std::move(pubkey_provider)); m_keys.back().push_back(std::move(pubkey_provider));
return key; return key;