From 56ccba86c7622333311e5fcb243815c9f3ddcaa3 Mon Sep 17 00:00:00 2001 From: Adrien Delorme Date: Mon, 15 Oct 2018 13:53:59 +0200 Subject: [PATCH] fix some race conditions --- packer/progressbar.go | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/packer/progressbar.go b/packer/progressbar.go index f08928767..fed58f41a 100644 --- a/packer/progressbar.go +++ b/packer/progressbar.go @@ -66,7 +66,9 @@ func (spb *StackableProgressBar) Start(total int64) { func (spb *StackableProgressBar) Add(total int64) { spb.mtx.Lock() defer spb.mtx.Unlock() - spb.Bar.Add(total) + if spb.Bar.ProgressBar != nil { + spb.Bar.Add(total) + } } func (spb *StackableProgressBar) NewProxyReader(r io.Reader) io.Reader { @@ -87,12 +89,13 @@ func (spb *StackableProgressBar) Finish() { if spb.items == 0 { // slef cleanup spb.Bar.ProgressBar.Finish() - spb.Bar.ProgressBar = nil spb.started = false spb.total = 0 return } - spb.prefix() + if spb.Bar.ProgressBar != nil { + spb.prefix() + } } // BasicProgressBar is packer's basic progress bar.