From 27fed83083fc0877fcc678d62d76678cd6bf985f Mon Sep 17 00:00:00 2001 From: Konstantinos Sideris Date: Fri, 31 Aug 2018 16:25:27 +0300 Subject: [PATCH] Retry initial sync on generic network errors (#422) --- src/ChatPage.cpp | 6 ++++++ src/MainWindow.h | 3 +++ 2 files changed, 9 insertions(+) diff --git a/src/ChatPage.cpp b/src/ChatPage.cpp index 9596d561..719c697b 100644 --- a/src/ChatPage.cpp +++ b/src/ChatPage.cpp @@ -1169,6 +1169,12 @@ ChatPage::initialSyncHandler(const mtx::responses::Sync &res, mtx::http::Request nhlog::net()->error("initial sync error: {} {}", status_code, err_code); + // non http related errors + if (status_code <= 0 || status_code >= 600) { + startInitialSync(); + return; + } + switch (status_code) { case 502: case 504: diff --git a/src/MainWindow.h b/src/MainWindow.h index 1953ba0e..0931099d 100644 --- a/src/MainWindow.h +++ b/src/MainWindow.h @@ -105,6 +105,9 @@ private slots: //! Show the login page in the main window. void showLoginPage() { + if (modal_) + modal_->hide(); + pageStack_->addWidget(login_page_); pageStack_->setCurrentWidget(login_page_); }