mirror of
https://github.com/golang/go
synced 2024-11-19 04:34:39 -07:00
os: fix write on Plan 9
In CL 160670043 the write function was changed so a zero-length write is now allowed. This leads the ExampleWriter_Init test to fail. The reason is that Plan 9 preserves message boundaries, while the os library expects systems that don't preserve them. We have to ignore zero-length writes so they will never turn into EOF. This issue was previously discussed in CL 7406046. LGTM=bradfitz R=rsc, bradfitz CC=golang-codereviews https://golang.org/cl/163510043
This commit is contained in:
parent
982dcb249d
commit
5f54f06a35
@ -259,6 +259,9 @@ func (f *File) pread(b []byte, off int64) (n int, err error) {
|
||||
// Since Plan 9 preserves message boundaries, never allow
|
||||
// a zero-byte write.
|
||||
func (f *File) write(b []byte) (n int, err error) {
|
||||
if len(b) == 0 {
|
||||
return 0, nil
|
||||
}
|
||||
return fixCount(syscall.Write(f.fd, b))
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user