aboutsummaryrefslogtreecommitdiff
path: root/src/libwalletqt/WalletManager.cpp
diff options
context:
space:
mode:
authorRiccardo Spagni <ric@spagni.net>2017-02-04 17:46:57 +0200
committerRiccardo Spagni <ric@spagni.net>2017-02-04 17:46:57 +0200
commit739d24efb4864a84f9b6bfac34dc804e26bde77b (patch)
treef71030206a20ca93981aa51bdeade495920c6304 /src/libwalletqt/WalletManager.cpp
parentf2a583fd49f6070b8a641e749704b8b958e20537 (diff)
parent0b41fbc858a95b99a6a6f5ab203368cfd4870044 (diff)
downloadmonzero-gui-739d24efb4864a84f9b6bfac34dc804e26bde77b.tar.gz
monzero-gui-739d24efb4864a84f9b6bfac34dc804e26bde77b.tar.xz
monzero-gui-739d24efb4864a84f9b6bfac34dc804e26bde77b.zip
Merge pull request #442
0b41fbc Don't close/reopen when changing daemon requires #1655 (Jaquee) 2586404 sync progress improvements (Jaquee) eb909e1 async connectionStatus and init (Jaquee) cb3281d WalletManager: fix possible race (Jaquee) 9dbbd4c WalletManager: check connection before isMining() (Jaquee)
Diffstat (limited to 'src/libwalletqt/WalletManager.cpp')
-rw-r--r--src/libwalletqt/WalletManager.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/libwalletqt/WalletManager.cpp b/src/libwalletqt/WalletManager.cpp
index 1db216cf..df0ffdbd 100644
--- a/src/libwalletqt/WalletManager.cpp
+++ b/src/libwalletqt/WalletManager.cpp
@@ -64,13 +64,14 @@ void WalletManager::openWalletAsync(const QString &path, const QString &password
QFuture<Wallet*> future = QtConcurrent::run(this, &WalletManager::openWallet,
path, password, testnet);
QFutureWatcher<Wallet*> * watcher = new QFutureWatcher<Wallet*>();
- watcher->setFuture(future);
+
connect(watcher, &QFutureWatcher<Wallet*>::finished,
this, [this, watcher]() {
QFuture<Wallet*> future = watcher->future();
watcher->deleteLater();
emit walletOpened(future.result());
});
+ watcher->setFuture(future);
}
@@ -121,7 +122,6 @@ void WalletManager::closeWalletAsync()
{
QFuture<QString> future = QtConcurrent::run(this, &WalletManager::closeWallet);
QFutureWatcher<QString> * watcher = new QFutureWatcher<QString>();
- watcher->setFuture(future);
connect(watcher, &QFutureWatcher<QString>::finished,
this, [this, watcher]() {
@@ -129,6 +129,7 @@ void WalletManager::closeWalletAsync()
watcher->deleteLater();
emit walletClosed(future.result());
});
+ watcher->setFuture(future);
}
bool WalletManager::walletExists(const QString &path) const
@@ -256,6 +257,8 @@ double WalletManager::miningHashRate() const
bool WalletManager::isMining() const
{
+ if(!m_currentWallet->connected())
+ return false;
return m_pimpl->isMining();
}