diff --git a/progress.go b/progress.go index 6cc9285..447c322 100644 --- a/progress.go +++ b/progress.go @@ -144,18 +144,19 @@ ch <- result{bar, bs} }: res := <-ch - res.bar.TraverseDecorators(func(d decor.Decorator) { + bar, bs := res.bar, res.bs + bar.TraverseDecorators(func(d decor.Decorator) { if d, ok := d.(decor.AverageDecorator); ok { - res.bs.averageDecorators = append(res.bs.averageDecorators, d) + bs.averageDecorators = append(bs.averageDecorators, d) } if d, ok := d.(decor.EwmaDecorator); ok { - res.bs.ewmaDecorators = append(res.bs.ewmaDecorators, d) + bs.ewmaDecorators = append(bs.ewmaDecorators, d) } if d, ok := d.(decor.ShutdownListener); ok { - res.bs.shutdownListeners = append(res.bs.shutdownListeners, d) + bs.shutdownListeners = append(bs.shutdownListeners, d) } }) - return res.bar + return bar case <-p.done: panic(DoneError) }