writeOutError surfaces deferred write errors from writers that record them (lazyFileWriter); plain writers such as os.Stdout report nil.
(out io.Writer)
| 546 | // writeOutError surfaces deferred write errors from writers that record them |
| 547 | // (lazyFileWriter); plain writers such as os.Stdout report nil. |
| 548 | func writeOutError(out io.Writer) error { |
| 549 | if r, ok := out.(interface{ Err() error }); ok { |
| 550 | return r.Err() |
| 551 | } |
| 552 | return nil |
| 553 | } |
| 554 | |
| 555 | // Close closes the underlying file. It is a no-op when the file was never |
| 556 | // created (no output produced), so failure paths cannot leave a fresh empty |