fix client crash when server goes down during registration (#5787)

This commit is contained in:
ebbit1q
2025-04-11 23:01:14 -04:00
committed by GitHub
parent 3b758962e4
commit 9463390e80
2 changed files with 8 additions and 0 deletions
+3
View File
@@ -574,6 +574,9 @@ void MainWindow::registerError(Response::ResponseCode r, QString reasonStr, quin
case Response::RespRegistrationFailed:
QMessageBox::critical(this, tr("Error"), tr("Registration failed for a technical problem on the server."));
break;
case Response::RespNotConnected:
QMessageBox::critical(this, tr("Error"), tr("The connection to the server has been lost."));
break;
default:
QMessageBox::critical(this, tr("Error"),
tr("Unknown registration error: %1").arg(static_cast<int>(r)) +
@@ -339,6 +339,11 @@ void RemoteClient::registerResponse(const Response &response)
emit registerAcceptedNeedsActivate();
doLogin();
break;
case Response::RespNotConnected:
// this response is created by the client from doDisconnectFromServer, do not call it again!
emit registerError(response.response_code(), QString::fromStdString(resp.denied_reason_str()),
static_cast<quint32>(resp.denied_end_time()));
break;
default:
emit registerError(response.response_code(), QString::fromStdString(resp.denied_reason_str()),
static_cast<quint32>(resp.denied_end_time()));