Fix logout

Fix the account editor setting page and the controller logout function so that you can logout without crashing.
This commit is contained in:
James Graham
2022-11-20 16:55:50 +00:00
parent cd257137ba
commit c0b29afc47
2 changed files with 6 additions and 3 deletions

View File

@@ -291,8 +291,11 @@ void Controller::logout(Connection *conn, bool serverSideLogout)
job.start();
loop.exec();
if (conn == activeConnection() && AccountRegistry::instance().count() > 1) {
setActiveConnection(AccountRegistry::instance().accounts()[0]);
if (AccountRegistry::instance().count() > 1) {
// Only set the connection if the the account being logged out is currently active
if (conn == activeConnection()) {
setActiveConnection(AccountRegistry::instance().accounts()[0]);
}
} else {
setActiveConnection(nullptr);
}

View File

@@ -233,7 +233,7 @@ Kirigami.ScrollablePage {
Layout.fillWidth: true
text: i18n("Sign out")
onClicked: {
Controller.logout(model.connection, true);
Controller.logout(root.connection, true);
root.closeDialog();
if (Controller.accountCount === 1) {
pageStack.layers.pop();