From 0811c7be9909d590987e88a3e8398f27c5d3d44f Mon Sep 17 00:00:00 2001 From: Sam Kleinman Date: Thu, 1 Apr 2021 10:03:51 -0400 Subject: [PATCH] fix: theoretical leak in clisit.Init (#6302) --- libs/clist/clist.go | 21 ++++++++------------- 1 file changed, 8 insertions(+), 13 deletions(-) diff --git a/libs/clist/clist.go b/libs/clist/clist.go index 5579b1d0f..a32098774 100644 --- a/libs/clist/clist.go +++ b/libs/clist/clist.go @@ -229,18 +229,6 @@ type CList struct { maxLen int // max list length } -func (l *CList) Init() *CList { - l.mtx.Lock() - - l.wg = waitGroup1() - l.waitCh = make(chan struct{}) - l.head = nil - l.tail = nil - l.len = 0 - l.mtx.Unlock() - return l -} - // Return CList with MaxLength. CList will panic if it goes beyond MaxLength. func New() *CList { return newWithMax(MaxLength) } @@ -249,7 +237,14 @@ func New() *CList { return newWithMax(MaxLength) } func newWithMax(maxLength int) *CList { l := new(CList) l.maxLen = maxLength - return l.Init() + + l.wg = waitGroup1() + l.waitCh = make(chan struct{}) + l.head = nil + l.tail = nil + l.len = 0 + + return l } func (l *CList) Len() int {