mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-07-02 11:41:18 +02:00
wallet: Set encrypted_batch to nullptr after delete. Avoid double free in the case of NDEBUG.
This commit is contained in:
@ -687,6 +687,7 @@ bool CWallet::EncryptWallet(const SecureString& strWalletPassphrase)
|
|||||||
{
|
{
|
||||||
encrypted_batch->TxnAbort();
|
encrypted_batch->TxnAbort();
|
||||||
delete encrypted_batch;
|
delete encrypted_batch;
|
||||||
|
encrypted_batch = nullptr;
|
||||||
// We now probably have half of our keys encrypted in memory, and half not...
|
// We now probably have half of our keys encrypted in memory, and half not...
|
||||||
// die and let the user reload the unencrypted wallet.
|
// die and let the user reload the unencrypted wallet.
|
||||||
assert(false);
|
assert(false);
|
||||||
@ -697,6 +698,7 @@ bool CWallet::EncryptWallet(const SecureString& strWalletPassphrase)
|
|||||||
|
|
||||||
if (!encrypted_batch->TxnCommit()) {
|
if (!encrypted_batch->TxnCommit()) {
|
||||||
delete encrypted_batch;
|
delete encrypted_batch;
|
||||||
|
encrypted_batch = nullptr;
|
||||||
// We now have keys encrypted in memory, but not on disk...
|
// We now have keys encrypted in memory, but not on disk...
|
||||||
// die to avoid confusion and let the user reload the unencrypted wallet.
|
// die to avoid confusion and let the user reload the unencrypted wallet.
|
||||||
assert(false);
|
assert(false);
|
||||||
|
Reference in New Issue
Block a user