From 09ec3af16687aa301a921a1a6e94d7a57d4af141 Mon Sep 17 00:00:00 2001 From: "Wladimir J. van der Laan" Date: Tue, 18 Feb 2014 15:23:24 +0100 Subject: [PATCH] AddToWallet implies BindWallet Now that AddToWallet is called when loading transactions from the wallet database, BindWallet can be integrated into that and does not need to be an extra step. Leaves behaviour unchanged, but makes the fFromLoadWallet/!fFromLoadWallet paths in AddToWallet a bit more symmetric. --- src/wallet.cpp | 1 + src/walletdb.cpp | 4 +--- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/src/wallet.cpp b/src/wallet.cpp index 3ecd994e9..352e2a776 100644 --- a/src/wallet.cpp +++ b/src/wallet.cpp @@ -470,6 +470,7 @@ bool CWallet::AddToWallet(const CWalletTx& wtxIn, bool fFromLoadWallet) if (fFromLoadWallet) { mapWallet[hash] = wtxIn; + mapWallet[hash].BindWallet(this); AddToSpends(hash); } else diff --git a/src/walletdb.cpp b/src/walletdb.cpp index b57ea0b51..359a1cef6 100644 --- a/src/walletdb.cpp +++ b/src/walletdb.cpp @@ -352,9 +352,7 @@ ReadKeyValue(CWallet* pwallet, CDataStream& ssKey, CDataStream& ssValue, CWalletTx wtx; ssValue >> wtx; CValidationState state; - if (CheckTransaction(wtx, state) && (wtx.GetHash() == hash) && state.IsValid()) - wtx.BindWallet(pwallet); - else + if (!(CheckTransaction(wtx, state) && (wtx.GetHash() == hash) && state.IsValid())) return false; // Undo serialize changes in 31600