diff --git a/swarm/storage/chunker_test.go b/swarm/storage/chunker_test.go index b41d7dd333..34079d7568 100644 --- a/swarm/storage/chunker_test.go +++ b/swarm/storage/chunker_test.go @@ -43,11 +43,14 @@ type chunkerTester struct { inputs map[uint64][]byte chunks map[string]*Chunk t test + lock sync.Mutex } func (self *chunkerTester) Split(chunker Splitter, data io.Reader, size int64, chunkC chan *Chunk, swg *sync.WaitGroup, expectedError error) (key Key, err error) { // reset + self.lock.Lock() self.chunks = make(map[string]*Chunk) + self.lock.Unlock() if self.inputs == nil { self.inputs = make(map[uint64][]byte) @@ -65,7 +68,9 @@ func (self *chunkerTester) Split(chunker Splitter, data io.Reader, size int64, c return nil case chunk := <-chunkC: // self.chunks = append(self.chunks, chunk) + self.lock.Lock() self.chunks[chunk.Key.String()] = chunk + self.lock.Unlock() if chunk.wg != nil { chunk.wg.Done() } @@ -81,9 +86,6 @@ func (self *chunkerTester) Split(chunker Splitter, data io.Reader, size int64, c } if chunkC != nil { - if swg != nil { - swg.Wait() - } close(quitC) } return key, err