mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-02-21 14:34:49 +01:00
wallet: Fix use-after-free in WalletBatch::EraseRecords
This commit is contained in:
parent
65c05db660
commit
faebf1df2a
1 changed files with 2 additions and 2 deletions
|
@ -1401,13 +1401,13 @@ bool WalletBatch::EraseRecords(const std::unordered_set<std::string>& types)
|
|||
}
|
||||
|
||||
// Make a copy of key to avoid data being deleted by the following read of the type
|
||||
Span key_data{key};
|
||||
const SerializeData key_data{key.begin(), key.end()};
|
||||
|
||||
std::string type;
|
||||
key >> type;
|
||||
|
||||
if (types.count(type) > 0) {
|
||||
if (!m_batch->Erase(key_data)) {
|
||||
if (!m_batch->Erase(Span{key_data})) {
|
||||
cursor.reset(nullptr);
|
||||
m_batch->TxnAbort();
|
||||
return false; // erase failed
|
||||
|
|
Loading…
Add table
Reference in a new issue