reader: move error check in validate
The method can report the error and return
a bit earlier if there is a problem.
Change-Id: Icf6c258cb0f994cebc7a717e1e28e7b6ec95dd60
Reviewed-on: https://go-review.googlesource.com/15908
Reviewed-by: Andrew Gerrand <adg@golang.org>
diff --git a/reader/validate.go b/reader/validate.go
index 6b4125e..c60f94f 100644
--- a/reader/validate.go
+++ b/reader/validate.go
@@ -15,6 +15,10 @@
i, o := 0, 0
for ; i < 1<<20 && o < 1<<20; i++ { // test 1mb
n, err := r.Read(b)
+ if err != nil {
+ fmt.Fprintf(os.Stderr, "read error: %v\n", err)
+ return
+ }
for i, v := range b[:n] {
if v != 'A' {
fmt.Fprintf(os.Stderr, "got byte %x at offset %v, want 'A'\n", v, o+i)
@@ -22,10 +26,6 @@
}
}
o += n
- if err != nil {
- fmt.Fprintf(os.Stderr, "read error: %v\n", err)
- return
- }
}
if o == 0 {
fmt.Fprintf(os.Stderr, "read zero bytes after %d Read calls\n", i)