diff options
| author | Riccardo Spagni <ric@spagni.net> | 2017-05-05 11:50:42 +0200 |
|---|---|---|
| committer | Riccardo Spagni <ric@spagni.net> | 2017-05-05 11:50:43 +0200 |
| commit | f5450f9205bb75bdaabe2e4ff149835cb6fc73d8 (patch) | |
| tree | 35f73a5d286fc0944cc823c19a5e8384d0e4ddd1 /src/libwalletqt | |
| parent | 1f23df7e660d7c73e86c53198714b40cf674ced5 (diff) | |
| parent | f00a1818432fa8e09ccb643a5ce22e11bbbe1896 (diff) | |
| download | monzero-gui-f5450f9205bb75bdaabe2e4ff149835cb6fc73d8.tar.gz monzero-gui-f5450f9205bb75bdaabe2e4ff149835cb6fc73d8.tar.xz monzero-gui-f5450f9205bb75bdaabe2e4ff149835cb6fc73d8.zip | |
Merge pull request #706
f00a181 Disable rescan cache btn until we know if it's needed (Jaquee)
98b0406 Settings: Rescan wallet cache button (Jaquee)
Diffstat (limited to 'src/libwalletqt')
| -rw-r--r-- | src/libwalletqt/WalletManager.cpp | 19 | ||||
| -rw-r--r-- | src/libwalletqt/WalletManager.h | 3 |
2 files changed, 22 insertions, 0 deletions
diff --git a/src/libwalletqt/WalletManager.cpp b/src/libwalletqt/WalletManager.cpp index ad77ad48..300b3699 100644 --- a/src/libwalletqt/WalletManager.cpp +++ b/src/libwalletqt/WalletManager.cpp @@ -11,6 +11,7 @@ #include <QtConcurrent/QtConcurrent> #include <QMutex> #include <QMutexLocker> +#include <QString> WalletManager * WalletManager::m_instance = nullptr; @@ -338,6 +339,24 @@ QString WalletManager::checkUpdates(const QString &software, const QString &subd return QString::fromStdString(std::get<1>(result) + "|" + std::get<2>(result) + "|" + std::get<3>(result) + "|" + std::get<4>(result)); } +bool WalletManager::clearWalletCache(const QString &wallet_path) const +{ + + QString fileName = wallet_path; + // Make sure wallet file is not .keys + fileName.replace(".keys",""); + QFile walletCache(fileName); + QString suffix = ".old_cache"; + QString newFileName = fileName + suffix; + + // create unique file name + for (int i = 1; QFile::exists(newFileName); i++) { + newFileName = QString("%1%2.%3").arg(fileName).arg(suffix).arg(i); + } + + return walletCache.rename(newFileName); +} + WalletManager::WalletManager(QObject *parent) : QObject(parent) { m_pimpl = Monero::WalletManagerFactory::getWalletManager(); diff --git a/src/libwalletqt/WalletManager.h b/src/libwalletqt/WalletManager.h index 01afc064..6824d603 100644 --- a/src/libwalletqt/WalletManager.h +++ b/src/libwalletqt/WalletManager.h @@ -136,6 +136,9 @@ public: Q_INVOKABLE bool saveQrCode(const QString &, const QString &) const; Q_INVOKABLE QString checkUpdates(const QString &software, const QString &subdir) const; + // clear/rename wallet cache + Q_INVOKABLE bool clearWalletCache(const QString &fileName) const; + signals: void walletOpened(Wallet * wallet); |
