accounting: fix race clearing stats

This race was introduced by

10a6a92e52 accounting: reset bytes read during copy retry
This commit is contained in:
Nick Craig-Wood 2020-05-12 16:20:30 +01:00
parent cb5979a468
commit 177195aeeb
1 changed files with 6 additions and 2 deletions

View File

@ -146,12 +146,16 @@ func (acc *Account) UpdateReader(in io.ReadCloser) {
acc.close = in
acc.origIn = in
acc.closed = false
acc.lpBytes = 0
acc.bytes = int64(0)
if withBuf {
acc.WithBuffer()
}
acc.mu.Unlock()
// Reset counter to stop percentage going over 100%
acc.values.mu.Lock()
acc.values.lpBytes = 0
acc.values.bytes = 0
acc.values.mu.Unlock()
}
// averageLoop calculates averages for the stats in the background