diff options
author | Gavin Andresen <gavinandresen@gmail.com> | 2013-05-02 12:43:07 -0400 |
---|---|---|
committer | Gavin Andresen <gavinandresen@gmail.com> | 2013-05-02 12:43:07 -0400 |
commit | 2f15e86a68aba56a8ea8e01e58b2fb7b71846b51 (patch) | |
tree | 62a394f718d3f7a910579b43bfd33dda1f706cd3 /src/wallet.h | |
parent | eef2091fe9ee39ecd8e874c91d3ab0ff023c5356 (diff) |
Do not write to wallet during LoadWallet
When debugging another issue, I found a hang-during-startup race condition due to
LoadWallet calling SetMinVersion (via LoadCryptedKey).
Writing to the file that you're in the process of reading is a bad idea.
Diffstat (limited to 'src/wallet.h')
-rw-r--r-- | src/wallet.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/wallet.h b/src/wallet.h index 2e007557b0..348f36a0e4 100644 --- a/src/wallet.h +++ b/src/wallet.h @@ -145,7 +145,7 @@ public: // Adds an encrypted key to the store, and saves it to disk. bool AddCryptedKey(const CPubKey &vchPubKey, const std::vector<unsigned char> &vchCryptedSecret); // Adds an encrypted key to the store, without saving it to disk (used by LoadWallet) - bool LoadCryptedKey(const CPubKey &vchPubKey, const std::vector<unsigned char> &vchCryptedSecret) { SetMinVersion(FEATURE_WALLETCRYPT); return CCryptoKeyStore::AddCryptedKey(vchPubKey, vchCryptedSecret); } + bool LoadCryptedKey(const CPubKey &vchPubKey, const std::vector<unsigned char> &vchCryptedSecret); bool AddCScript(const CScript& redeemScript); bool LoadCScript(const CScript& redeemScript) { return CCryptoKeyStore::AddCScript(redeemScript); } |