避免packet直接加入消息队列后被gnet重复使用污染

This commit is contained in:
kercylan98 2023-05-30 16:11:47 +08:00
parent 4cf4e7a83e
commit 58801855fd
1 changed files with 2 additions and 1 deletions

View File

@ -1,6 +1,7 @@
package server package server
import ( import (
"bytes"
"github.com/panjf2000/gnet" "github.com/panjf2000/gnet"
"time" "time"
) )
@ -38,7 +39,7 @@ func (slf *gNet) AfterWrite(c gnet.Conn, b []byte) {
} }
func (slf *gNet) React(packet []byte, c gnet.Conn) (out []byte, action gnet.Action) { func (slf *gNet) React(packet []byte, c gnet.Conn) (out []byte, action gnet.Action) {
slf.Server.PushMessage(MessageTypePacket, c.Context().(*Conn), packet) slf.Server.PushMessage(MessageTypePacket, c.Context().(*Conn), bytes.Clone(packet))
return nil, gnet.None return nil, gnet.None
} }