Commit 665af046 authored by Agniva De Sarker's avatar Agniva De Sarker Committed by Brad Fitzpatrick

io: document that ReadAtLeast and ReadFull can drop errors

Add a note that if an error is returned after having read
at least the minimum no. of bytes, the error is set to nil.

Fixes #20477

Change-Id: I75ba5ee967be3ff80249e40d459da4afeeb53463
Reviewed-on: https://go-review.googlesource.com/102459Reviewed-by: 's avatarBrad Fitzpatrick <bradfitz@golang.org>
parent 68a1c9c4
......@@ -300,6 +300,7 @@ func WriteString(w Writer, s string) (n int, err error) {
// ReadAtLeast returns ErrUnexpectedEOF.
// If min is greater than the length of buf, ReadAtLeast returns ErrShortBuffer.
// On return, n >= min if and only if err == nil.
// If r returns an error having read at least min bytes, the error is dropped.
func ReadAtLeast(r Reader, buf []byte, min int) (n int, err error) {
if len(buf) < min {
return 0, ErrShortBuffer
......@@ -323,6 +324,7 @@ func ReadAtLeast(r Reader, buf []byte, min int) (n int, err error) {
// If an EOF happens after reading some but not all the bytes,
// ReadFull returns ErrUnexpectedEOF.
// On return, n == len(buf) if and only if err == nil.
// If r returns an error having read at least len(buf) bytes, the error is dropped.
func ReadFull(r Reader, buf []byte) (n int, err error) {
return ReadAtLeast(r, buf, len(buf))
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment