Merge pull request 'Fix indefinite hang when closing wallet via File -> Quit' (#80) from tobtoht/feather:close_without_indefinite_hang into master

Reviewed-on: feather/feather#80
tobtoht-patch-1
tobtoht 4 years ago
commit 0f0b033fe4

@ -894,6 +894,8 @@ void MainWindow::menuNewRestoreClicked() {
} }
void MainWindow::menuQuitClicked() { void MainWindow::menuQuitClicked() {
cleanupBeforeClose();
QCoreApplication::quit(); QCoreApplication::quit();
} }
@ -967,10 +969,7 @@ void MainWindow::homeWidgetChanged(const QString &widgetName) {
} }
void MainWindow::closeEvent(QCloseEvent *event) { void MainWindow::closeEvent(QCloseEvent *event) {
m_ctx->walletManager->closeWallet(); cleanupBeforeClose();
m_ctx->tor->stop();
this->saveGeo();
QWidget::closeEvent(event); QWidget::closeEvent(event);
} }
@ -1141,6 +1140,13 @@ void MainWindow::importOutputs() {
} }
} }
void MainWindow::cleanupBeforeClose() {
m_ctx->walletManager->closeWallet();
m_ctx->tor->stop();
this->saveGeo();
}
MainWindow::~MainWindow() { MainWindow::~MainWindow() {
delete ui; delete ui;
} }

@ -125,6 +125,7 @@ private:
static MainWindow * pMainWindow; static MainWindow * pMainWindow;
void closeEvent(QCloseEvent *event) override; void closeEvent(QCloseEvent *event) override;
void cleanupBeforeClose();
void create_status_bar(); void create_status_bar();
void initMain(); void initMain();
void loadSkins(); void loadSkins();

Loading…
Cancel
Save