diff options
author | Riccardo Spagni <ric@spagni.net> | 2018-10-05 23:12:57 +0200 |
---|---|---|
committer | Riccardo Spagni <ric@spagni.net> | 2018-10-05 23:12:57 +0200 |
commit | 21960a5b5a2713b1573f108fb6e4b4e0ffa0fa86 (patch) | |
tree | 998a7cd3cd6710fb3f1e11c52f99ba48b5f5985e | |
parent | Merge pull request #4390 (diff) | |
parent | wallet2_api: fix build with C++14 (diff) | |
download | monero-21960a5b5a2713b1573f108fb6e4b4e0ffa0fa86.tar.xz |
Merge pull request #4499
c5928bde wallet2_api: fix build with C++14 (moneromooo-monero)
-rw-r--r-- | src/wallet/api/wallet.cpp | 21 |
1 files changed, 14 insertions, 7 deletions
diff --git a/src/wallet/api/wallet.cpp b/src/wallet/api/wallet.cpp index 236928348..58a6db689 100644 --- a/src/wallet/api/wallet.cpp +++ b/src/wallet/api/wallet.cpp @@ -96,6 +96,9 @@ namespace { throw runtime_error("Multisig wallet is not finalized yet"); } } + void checkMultisigWalletReady(const std::unique_ptr<tools::wallet2> &wallet) { + return checkMultisigWalletReady(wallet.get()); + } void checkMultisigWalletNotReady(const tools::wallet2* wallet) { if (!wallet) { @@ -111,6 +114,9 @@ namespace { throw runtime_error("Multisig wallet is already finalized"); } } + void checkMultisigWalletNotReady(const std::unique_ptr<tools::wallet2> &wallet) { + return checkMultisigWalletNotReady(wallet.get()); + } } struct Wallet2CallbackImpl : public tools::i_wallet2_callback @@ -376,15 +382,15 @@ WalletImpl::WalletImpl(NetworkType nettype, uint64_t kdf_rounds) , m_rebuildWalletCache(false) , m_is_connected(false) { - m_wallet = std::make_unique<tools::wallet2>(static_cast<cryptonote::network_type>(nettype), kdf_rounds, true); - m_history = std::make_unique<TransactionHistoryImpl>(this); - m_wallet2Callback = std::make_unique<Wallet2CallbackImpl>(this); - m_wallet->callback(m_wallet2Callback); + m_wallet.reset(new tools::wallet2(static_cast<cryptonote::network_type>(nettype), kdf_rounds, true)); + m_history.reset(new TransactionHistoryImpl(this)); + m_wallet2Callback.reset(new Wallet2CallbackImpl(this)); + m_wallet->callback(m_wallet2Callback.get()); m_refreshThreadDone = false; m_refreshEnabled = false; - m_addressBook = std::make_unique<AddressBookImpl>(this); - m_subaddress = std::make_unique<SubaddressImpl>(this); - m_subaddressAccount = std::make_unique<SubaddressAccountImpl>(this); + m_addressBook.reset(new AddressBookImpl(this)); + m_subaddress.reset(new SubaddressImpl(this)); + m_subaddressAccount.reset(new SubaddressAccountImpl(this)); m_refreshIntervalMillis = DEFAULT_REFRESH_INTERVAL_MILLIS; @@ -399,6 +405,7 @@ WalletImpl::~WalletImpl() { LOG_PRINT_L1(__FUNCTION__); + m_wallet->callback(NULL); // Pause refresh thread - prevents refresh from starting again pauseRefresh(); // Close wallet - stores cache and stops ongoing refresh operation |