diff options
author | Pieter Wuille <pieter.wuille@gmail.com> | 2011-06-26 02:37:52 +0200 |
---|---|---|
committer | Pieter Wuille <pieter.wuille@gmail.com> | 2011-06-26 02:37:52 +0200 |
commit | d3800d59d557388b813513ef16f6b840467821d4 (patch) | |
tree | 6a106e5badc30d610bb643e40080232270f6b063 | |
parent | c774b1697690c3f94ccd79c5de660b6050ac6409 (diff) |
Fix segfault when creating new wallet
The initialization of the default key used keyUser instead
of vchDefaultKey. keyUser is now complete removed.
-rw-r--r-- | src/wallet.cpp | 12 | ||||
-rw-r--r-- | src/wallet.h | 1 |
2 files changed, 3 insertions, 10 deletions
diff --git a/src/wallet.cpp b/src/wallet.cpp index b06187a4b2..e35bce61ef 100644 --- a/src/wallet.cpp +++ b/src/wallet.cpp @@ -962,21 +962,15 @@ bool CWallet::LoadWallet(bool& fFirstRunRet) return false; fFirstRunRet = vchDefaultKey.empty(); - if (mapKeys.count(vchDefaultKey)) + if (!mapKeys.count(vchDefaultKey)) { - // Set keyUser - keyUser.SetPubKey(vchDefaultKey); - keyUser.SetPrivKey(mapKeys[vchDefaultKey]); - } - else - { - // Create new keyUser and set as default key + // Create new default key RandAddSeedPerfmon(); vchDefaultKey = GetKeyFromKeyPool(); if (!SetAddressBookName(PubKeyToAddress(vchDefaultKey), "")) return false; - CWalletDB(strWalletFile).WriteDefaultKey(keyUser.GetPubKey()); + CWalletDB(strWalletFile).WriteDefaultKey(vchDefaultKey); } CreateThread(ThreadFlushWalletDB, &strWalletFile); diff --git a/src/wallet.h b/src/wallet.h index cda4293bd2..b069d31ce9 100644 --- a/src/wallet.h +++ b/src/wallet.h @@ -47,7 +47,6 @@ public: mutable CCriticalSection cs_mapAddressBook; std::vector<unsigned char> vchDefaultKey; - CKey keyUser; bool AddKey(const CKey& key); bool AddToWallet(const CWalletTx& wtxIn); |