Shutdown daemon and close wallet properly on app exit

pull/2/head
Jaquee 8 years ago
parent 7876957b48
commit 8dfa79ec58
No known key found for this signature in database
GPG Key ID: 384E52B09F45DC39

@ -31,6 +31,7 @@
#include <QtQml>
#include <QStandardPaths>
#include <QDebug>
#include <QObject>
#include "clipboardAdapter.h"
#include "filter.h"
#include "oscursor.h"
@ -110,6 +111,13 @@ int main(int argc, char *argv[])
engine.rootContext()->setContextProperty("daemonManager", DaemonManager::instance(QCoreApplication::arguments()));
DaemonManager * daemonManager = DaemonManager::instance(QCoreApplication::arguments());
QObject::connect(&app, SIGNAL(aboutToQuit()), daemonManager, SLOT(closing()));
engine.rootContext()->setContextProperty("daemonManager", daemonManager);
>>>>>>> cc05e1a... Shutdown daemon and close wallet properly on app exit
// export to QML monero accounts root directory
// wizard is talking about where
// to save the wallet file (.keys, .bin), they have to be user-accessible for

@ -1053,12 +1053,13 @@ ApplicationWindow {
}
}
onClosing: {
// Close and save to disk on app close
if (currentWallet != undefined) {
walletManager.closeWallet(currentWallet);
currentWallet = undefined
}
// Stop daemon
daemonManager.stop();
// Make sure wallet is closed before app exit (~Wallet() isn't always invoked)
// Daemon shutdown is handled with signal/slot in main.cpp
if (currentWallet != undefined) {
walletManager.closeWallet(currentWallet);
currentWallet = undefined
}
// Stop daemon
daemonManager.stop();
}
}