fix memory leak

pull/215/head
v2ray 9 years ago
parent b9bf419f57
commit 9434f5156c
No known key found for this signature in database
GPG Key ID: 7251FFA14BB18169

@ -64,6 +64,7 @@ func (this *Listener) OnReceive(payload *alloc.Buffer, src v2net.Destination) {
conn, found := this.sessions[sourceId] conn, found := this.sessions[sourceId]
if !found { if !found {
writer := &Writer{ writer := &Writer{
id: sourceId,
hub: this.hub, hub: this.hub,
dest: src, dest: src,
listener: this, listener: this,
@ -135,6 +136,7 @@ func (this *Listener) Addr() net.Addr {
} }
type Writer struct { type Writer struct {
id string
dest v2net.Destination dest v2net.Destination
hub *udp.UDPHub hub *udp.UDPHub
listener *Listener listener *Listener
@ -145,7 +147,7 @@ func (this *Writer) Write(payload []byte) (int, error) {
} }
func (this *Writer) Close() error { func (this *Writer) Close() error {
this.listener.Remove(this.dest.NetAddr()) this.listener.Remove(this.id)
return nil return nil
} }

Loading…
Cancel
Save