Assert to frameReader inside defer
Vladimir Bauer
8 years ago
| 227 | 227 | bar := heap.Pop(s.bHeap).(*Bar) |
| 228 | 228 | reader := <-bar.frameReaderCh |
| 229 | 229 | _, err = s.cw.ReadFrom(reader) |
| 230 | frame := reader.(*frameReader) | |
| 231 | 230 | defer func() { |
| 232 | if frame.toShutdown { | |
| 231 | if frame, ok := reader.(*frameReader); ok && frame.toShutdown { | |
| 233 | 232 | // shutdown at next flush, in other words decrement underlying WaitGroup |
| 234 | 233 | // only after the bar with completed state has been flushed. |
| 235 | 234 | // this ensures no bar ends up with less than 100% rendered. |