[fix] sync signal status after server switch

This commit is contained in:
dijunkun
2026-08-17 00:07:01 +08:00
parent 23e24e3d47
commit 7f4f1882ae
3 changed files with 33 additions and 8 deletions
+6
View File
@@ -57,6 +57,7 @@ int GuiRuntime::CreateConnectionPeer() {
signal_server_ip = config_center_->GetDefaultServerHost();
signal_server_port = config_center_->GetDefaultSignalServerPort();
coturn_server_port = config_center_->GetDefaultCoturnServerPort();
settings_.ActivateCachedPublicIdentity();
params_.user_id = client_id_with_password_;
}
@@ -125,6 +126,11 @@ int GuiRuntime::CreateConnectionPeer() {
params_.user_data = &peer_events_;
// The previous peer may have left a terminal status behind. Reset it before
// Init() starts emitting callbacks for the newly selected server.
signal_connected_ = false;
signal_status_ = SignalStatus::SignalConnecting;
peer_ = CreatePeer(&params_);
if (peer_) {
LOG_INFO("Create peer instance [{}] successful", client_id_);