diff options
author | Ian Lance Taylor <iant@golang.org> | 2020-10-12 09:46:38 -0700 |
---|---|---|
committer | Ian Lance Taylor <iant@golang.org> | 2020-10-12 09:46:38 -0700 |
commit | 9cd320ea6572c577cdf17ce1f9ea5230b166af6d (patch) | |
tree | d1c8e7c2e09a91ed75f0e5476c648c2e745aa2de /libgo/go/net/pipe.go | |
parent | 4854d721be78358e59367982bdd94461b4be3c5a (diff) | |
parent | 3175d40fc52fb8eb3c3b18cc343d773da24434fb (diff) | |
download | gcc-9cd320ea6572c577cdf17ce1f9ea5230b166af6d.zip gcc-9cd320ea6572c577cdf17ce1f9ea5230b166af6d.tar.gz gcc-9cd320ea6572c577cdf17ce1f9ea5230b166af6d.tar.bz2 |
Merge from trunk revision 3175d40fc52fb8eb3c3b18cc343d773da24434fb.
Diffstat (limited to 'libgo/go/net/pipe.go')
-rw-r--r-- | libgo/go/net/pipe.go | 15 |
1 files changed, 5 insertions, 10 deletions
diff --git a/libgo/go/net/pipe.go b/libgo/go/net/pipe.go index 9177fc4..f174193 100644 --- a/libgo/go/net/pipe.go +++ b/libgo/go/net/pipe.go @@ -6,6 +6,7 @@ package net import ( "io" + "os" "sync" "time" ) @@ -78,12 +79,6 @@ func isClosedChan(c <-chan struct{}) bool { } } -type timeoutError struct{} - -func (timeoutError) Error() string { return "deadline exceeded" } -func (timeoutError) Timeout() bool { return true } -func (timeoutError) Temporary() bool { return true } - type pipeAddr struct{} func (pipeAddr) Network() string { return "pipe" } @@ -158,7 +153,7 @@ func (p *pipe) read(b []byte) (n int, err error) { case isClosedChan(p.remoteDone): return 0, io.EOF case isClosedChan(p.readDeadline.wait()): - return 0, timeoutError{} + return 0, os.ErrDeadlineExceeded } select { @@ -171,7 +166,7 @@ func (p *pipe) read(b []byte) (n int, err error) { case <-p.remoteDone: return 0, io.EOF case <-p.readDeadline.wait(): - return 0, timeoutError{} + return 0, os.ErrDeadlineExceeded } } @@ -190,7 +185,7 @@ func (p *pipe) write(b []byte) (n int, err error) { case isClosedChan(p.remoteDone): return 0, io.ErrClosedPipe case isClosedChan(p.writeDeadline.wait()): - return 0, timeoutError{} + return 0, os.ErrDeadlineExceeded } p.wrMu.Lock() // Ensure entirety of b is written together @@ -206,7 +201,7 @@ func (p *pipe) write(b []byte) (n int, err error) { case <-p.remoteDone: return n, io.ErrClosedPipe case <-p.writeDeadline.wait(): - return n, timeoutError{} + return n, os.ErrDeadlineExceeded } } return n, nil |