• Joe Tsai's avatar
    io: fix Pipe regression with differing error types · af37332d
    Joe Tsai authored
    Usage of atomic.Value has a subtle requirement that the
    value be of the same concrete type. In prior usage, the intention
    was to consistently store a value of the error type.
    Since error is an interface, the underlying concrete can differ.
    
    Fix this by creating a type-safe abstraction over atomic.Value
    that wraps errors in a struct{error} type to ensure consistent types.
    
    Change-Id: Ica74f2daba15e4cff48d2b4f830d2cb51c608fb6
    Reviewed-on: https://go-review.googlesource.com/75594
    Run-TryBot: Joe Tsai <thebrokentoaster@gmail.com>
    TryBot-Result: Gobot Gobot <gobot@golang.org>
    Reviewed-by: 's avatarIan Lance Taylor <iant@golang.org>
    af37332d
pipe.go 4.84 KB