diff --git a/src/server/game_util/GoUtil.go b/src/server/game_util/GoUtil.go index c1009684..b34bb778 100644 --- a/src/server/game_util/GoUtil.go +++ b/src/server/game_util/GoUtil.go @@ -238,8 +238,10 @@ func GobMarshal(data interface{}) ([]byte, error) { bufferPool.Put(buf) // 即使出错也要归还 return nil, err } + result := make([]byte, buf.Len()) + copy(result, buf.Bytes()) bufferPool.Put(buf) // 归还到对象池 - return buf.Bytes(), nil + return result, nil } func GobUnmarshal(data []byte, obj interface{}) error {