short var name
Vladimir Bauer
4 years ago
| 257 | 257 | } |
| 258 | 258 | |
| 259 | 259 | func (s *pState) flush(cw *cwriter.Writer) error { |
| 260 | var totalLines int | |
| 260 | var lines int | |
| 261 | 261 | pool := make([]*Bar, 0, s.bHeap.Len()) |
| 262 | 262 | for s.bHeap.Len() > 0 { |
| 263 | 263 | b := heap.Pop(&s.bHeap).(*Bar) |
| 264 | 264 | frame := <-b.frameCh |
| 265 | totalLines += frame.lines | |
| 265 | lines += frame.lines | |
| 266 | 266 | _, err := cw.ReadFrom(frame.reader) |
| 267 | 267 | if err != nil { |
| 268 | 268 | return err |
| 277 | 277 | pool = append(pool, qb) |
| 278 | 278 | toDrop = true |
| 279 | 279 | } else if s.popCompleted && !b.bs.noPop { |
| 280 | totalLines -= frame.lines | |
| 280 | lines -= frame.lines | |
| 281 | 281 | toDrop = true |
| 282 | 282 | } |
| 283 | 283 | if toDrop || b.bs.dropOnComplete { |
| 292 | 292 | heap.Push(&s.bHeap, b) |
| 293 | 293 | } |
| 294 | 294 | |
| 295 | return cw.Flush(totalLines) | |
| 295 | return cw.Flush(lines) | |
| 296 | 296 | } |
| 297 | 297 | |
| 298 | 298 | func (s *pState) newTicker(done <-chan struct{}) chan time.Time { |