mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-03-05 14:06:27 -05:00
Merge bitcoin/bitcoin#26178: [24.x] Bugfix: Wallet: Lock cs_wallet for SignMessage
a60d9eb9e6
Bugfix: Wallet: Lock cs_wallet for SignMessage (Luke Dashjr)
Pull request description:
(Clean merge of #26130 to 24.x branch)
Top commit has no ACKs.
Tree-SHA512: 821e19d222cc1eb9a6b957ec87d48cfb00b2c5b8182682ac57d9c76785b667ad9c71444e6bf0f53177c06d5fb39e72dbfc82d7debe4b1597699eefaf3001d08d
This commit is contained in:
commit
ca8d2c4b43
1 changed files with 1 additions and 0 deletions
|
@ -2110,6 +2110,7 @@ SigningResult CWallet::SignMessage(const std::string& message, const PKHash& pkh
|
|||
CScript script_pub_key = GetScriptForDestination(pkhash);
|
||||
for (const auto& spk_man_pair : m_spk_managers) {
|
||||
if (spk_man_pair.second->CanProvide(script_pub_key, sigdata)) {
|
||||
LOCK(cs_wallet); // DescriptorScriptPubKeyMan calls IsLocked which can lock cs_wallet in a deadlocking order
|
||||
return spk_man_pair.second->SignMessage(message, pkhash, str_sig);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue