mirror of
https://github.com/ElementsProject/elements.git
synced 2026-08-15 12:51:00 +02:00
Merge 0f5e31ce7d into merged_master (Bitcoin PR bitcoin/bitcoin#28799)
This commit is contained in:
commit
08d0c71ed2
4 changed files with 6 additions and 5 deletions
|
|
@ -2608,7 +2608,7 @@ std::unique_ptr<CKeyMetadata> DescriptorScriptPubKeyMan::GetMetadata(const CTxDe
|
|||
uint256 DescriptorScriptPubKeyMan::GetID() const
|
||||
{
|
||||
LOCK(cs_desc_man);
|
||||
return DescriptorID(*m_wallet_descriptor.descriptor);
|
||||
return m_wallet_descriptor.id;
|
||||
}
|
||||
|
||||
void DescriptorScriptPubKeyMan::SetCache(const DescriptorCache& cache)
|
||||
|
|
@ -2662,7 +2662,7 @@ bool DescriptorScriptPubKeyMan::AddCryptedKey(const CKeyID& key_id, const CPubKe
|
|||
bool DescriptorScriptPubKeyMan::HasWalletDescriptor(const WalletDescriptor& desc) const
|
||||
{
|
||||
LOCK(cs_desc_man);
|
||||
return m_wallet_descriptor.descriptor != nullptr && desc.descriptor != nullptr && m_wallet_descriptor.descriptor->ToString() == desc.descriptor->ToString();
|
||||
return !m_wallet_descriptor.id.IsNull() && !desc.id.IsNull() && m_wallet_descriptor.id == desc.id;
|
||||
}
|
||||
|
||||
void DescriptorScriptPubKeyMan::WriteDescriptor()
|
||||
|
|
|
|||
|
|
@ -85,6 +85,7 @@ class WalletDescriptor
|
|||
{
|
||||
public:
|
||||
std::shared_ptr<Descriptor> descriptor;
|
||||
uint256 id; // Descriptor ID (calculated once at descriptor initialization/deserialization)
|
||||
uint64_t creation_time = 0;
|
||||
int32_t range_start = 0; // First item in range; start of range, inclusive, i.e. [range_start, range_end). This never changes.
|
||||
int32_t range_end = 0; // Item after the last; end of range, exclusive, i.e. [range_start, range_end). This will increment with each TopUp()
|
||||
|
|
@ -99,6 +100,7 @@ public:
|
|||
if (!descriptor) {
|
||||
throw std::ios_base::failure("Invalid descriptor: " + error);
|
||||
}
|
||||
id = DescriptorID(*descriptor);
|
||||
}
|
||||
|
||||
SERIALIZE_METHODS(WalletDescriptor, obj)
|
||||
|
|
@ -110,7 +112,7 @@ public:
|
|||
}
|
||||
|
||||
WalletDescriptor() {}
|
||||
WalletDescriptor(std::shared_ptr<Descriptor> descriptor, uint64_t creation_time, int32_t range_start, int32_t range_end, int32_t next_index) : descriptor(descriptor), creation_time(creation_time), range_start(range_start), range_end(range_end), next_index(next_index) {}
|
||||
WalletDescriptor(std::shared_ptr<Descriptor> descriptor, uint64_t creation_time, int32_t range_start, int32_t range_end, int32_t next_index) : descriptor(descriptor), id(DescriptorID(*descriptor)), creation_time(creation_time), range_start(range_start), range_end(range_end), next_index(next_index) { }
|
||||
};
|
||||
} // namespace wallet
|
||||
|
||||
|
|
|
|||
|
|
@ -135,7 +135,6 @@ BASE_SCRIPTS = [
|
|||
'feature_maxuploadtarget.py',
|
||||
'mempool_updatefromblock.py',
|
||||
'mempool_persist.py --descriptors',
|
||||
'wallet_miniscript.py --descriptors',
|
||||
# vv Tests less than 60s vv
|
||||
'rpc_psbt.py --legacy-wallet',
|
||||
'rpc_psbt.py --descriptors',
|
||||
|
|
@ -182,6 +181,7 @@ BASE_SCRIPTS = [
|
|||
'p2p_sendheaders.py',
|
||||
'wallet_listtransactions.py --legacy-wallet',
|
||||
'wallet_listtransactions.py --descriptors',
|
||||
'wallet_miniscript.py --descriptors',
|
||||
# vv Tests less than 30s vv
|
||||
'p2p_invalid_messages.py',
|
||||
'rpc_createmultisig.py',
|
||||
|
|
|
|||
|
|
@ -205,7 +205,6 @@ DESCS_PRIV = [
|
|||
class WalletMiniscriptTest(BitcoinTestFramework):
|
||||
def add_options(self, parser):
|
||||
self.add_wallet_options(parser, legacy=False)
|
||||
self.rpc_timeout = 480
|
||||
|
||||
def set_test_params(self):
|
||||
self.num_nodes = 1
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue