From: Ryoichi KATO Date: Sun, 25 Jun 2017 06:39:29 +0000 (-0700) Subject: bufio: Use maxConsecutiveEmptyReads instead of 100 X-Git-Tag: go1.10beta1~291 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=50ec831749fc40b30fd43cf0594d388500ea2887;p=gostls13.git bufio: Use maxConsecutiveEmptyReads instead of 100 Use maxConsecutiveEmptyReads const instead of hardcoded 100 in scan.go too. Change-Id: I993f353a3748f0d6bdefab38bf5cb224eea8a969 Reviewed-on: https://go-review.googlesource.com/46915 Reviewed-by: Rob Pike Reviewed-by: Brad Fitzpatrick --- diff --git a/src/bufio/scan.go b/src/bufio/scan.go index 9f741c9830..40aaa4ab81 100644 --- a/src/bufio/scan.go +++ b/src/bufio/scan.go @@ -123,8 +123,9 @@ var ErrFinalToken = errors.New("final token") // After Scan returns false, the Err method will return any error that // occurred during scanning, except that if it was io.EOF, Err // will return nil. -// Scan panics if the split function returns 100 empty tokens without -// advancing the input. This is a common error mode for scanners. +// Scan panics if the split function returns too many empty +// tokens without advancing the input. This is a common error mode for +// scanners. func (s *Scanner) Scan() bool { if s.done { return false @@ -156,8 +157,8 @@ func (s *Scanner) Scan() bool { } else { // Returning tokens not advancing input at EOF. s.empties++ - if s.empties > 100 { - panic("bufio.Scan: 100 empty tokens without progressing") + if s.empties > maxConsecutiveEmptyReads { + panic("bufio.Scan: too many empty tokens without progressing") } } return true