From 8ce5b149f71d86c975608ea05e5353a2b1b6e4f9 Mon Sep 17 00:00:00 2001 From: Flik Date: Thu, 29 Jan 2026 15:08:04 +0800 Subject: [PATCH] fix(server): update client nickname handling to prevent overwriting manual names --- internal/server/tunnel/server.go | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/internal/server/tunnel/server.go b/internal/server/tunnel/server.go index f1c0bd6..5d1692c 100644 --- a/internal/server/tunnel/server.go +++ b/internal/server/tunnel/server.go @@ -278,9 +278,10 @@ func (s *Server) handleConnection(conn net.Conn) { } log.Printf("[Server] New client registered: %s (%s)", clientID, authReq.Name) } else if authReq.Name != "" { - // 客户端已存在,更新名称(如果提供了新名称) + // 客户端已存在,仅当 Nickname 为空时才用客户端名称更新 + // 这样服务端手动设置的名称不会被客户端覆盖 if client, err := s.clientStore.GetClient(clientID); err == nil { - if client.Nickname == "" || client.Nickname != authReq.Name { + if client.Nickname == "" { client.Nickname = authReq.Name s.clientStore.UpdateClient(client) }