From a7bbfc3d59182dbc1bac1bc98c7b8fc70844435c Mon Sep 17 00:00:00 2001 From: hahwu <31872165+hahwu@users.noreply.github.com> Date: Thu, 25 Dec 2025 17:58:41 +0800 Subject: [PATCH] =?UTF-8?q?log=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/server/game/log_mgr.go | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/server/game/log_mgr.go b/src/server/game/log_mgr.go index 0f216af1..e333826d 100644 --- a/src/server/game/log_mgr.go +++ b/src/server/game/log_mgr.go @@ -197,6 +197,15 @@ func (L *LogMgr) InitManager() { } func (L *LogMgr) AddLog(logs *Log) { + // 复制结构体和 Param map,避免并发修改导致 json.Marshal 时 panic + copyLog := *logs + if logs.Param != nil { + newParam := make(map[string]interface{}, len(logs.Param)) + for k, v := range logs.Param { + newParam[k] = v + } + copyLog.Param = newParam + } // 如果已经开始关闭,直接丢弃 L.Lock.Lock() if L.closing {