Always double-wrap contextAlreadyDoneError

Signed-off-by: Michael Darr <michael.e.darr@gmail.com>
query-exec-mode
Michael Darr 2021-07-06 15:43:26 -04:00 committed by Jack Christensen
parent b3e64d3cdb
commit 9a9830c00d
1 changed files with 2 additions and 8 deletions

View File

@ -163,15 +163,9 @@ func (e *contextAlreadyDoneError) Unwrap() error {
return e.err
}
// newContextAlreadyDoneError wraps a context error in `contextAlreadyDoneError`. If the context was cancelled or its
// deadline passed, the returned error is also wrapped by `ErrTimeout`.
// newContextAlreadyDoneError double-wraps a context error in `contextAlreadyDoneError` and `ErrTimeout`.
func newContextAlreadyDoneError(ctx context.Context) (err error) {
ctxErr := ctx.Err()
err = &contextAlreadyDoneError{err: ctxErr}
if ctxErr != nil {
err = &ErrTimeout{err: err}
}
return err
return &ErrTimeout{&contextAlreadyDoneError{err: ctx.Err()}}
}
type writeError struct {