From 824d9243cc1a674367ef84907920d17b4df7d86c Mon Sep 17 00:00:00 2001 From: dijunkun Date: Thu, 10 Apr 2025 17:35:21 +0800 Subject: [PATCH] [fix] fix join problem that when join to a server which does not exist in recent connections --- src/single_window/connection_status_window.cpp | 1 + src/single_window/remote_peer_window.cpp | 4 +++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/src/single_window/connection_status_window.cpp b/src/single_window/connection_status_window.cpp index 172bcf9..42d5c66 100644 --- a/src/single_window/connection_status_window.cpp +++ b/src/single_window/connection_status_window.cpp @@ -130,6 +130,7 @@ int Render::ConnectionStatusWindow( show_connection_status_window_ = true; password_validating_ = true; props->rejoin_ = true; + need_to_rejoin_ = true; focus_on_input_widget_ = true; } diff --git a/src/single_window/remote_peer_window.cpp b/src/single_window/remote_peer_window.cpp index ec1ac6b..31407ec 100644 --- a/src/single_window/remote_peer_window.cpp +++ b/src/single_window/remote_peer_window.cpp @@ -157,7 +157,9 @@ int Render::ConnectTo(const std::string &remote_id, const char *password, auto props = client_properties_[remote_id]; if (!props->connection_established_) { props->remember_password_ = remember_password; - memcpy(props->remote_password_, password, 6); + if (strcmp(password, "") != 0) { + memcpy(props->remote_password_, password, sizeof(password)); + } ret = JoinConnection(props->peer_, remote_id.c_str(), password); if (0 == ret) { props->rejoin_ = false;