From 2d0db8e591513a1123057b8c330c946ddcb4fbc8 Mon Sep 17 00:00:00 2001 From: Russ Cox Date: Wed, 5 Nov 2014 22:50:24 -0500 Subject: bufio: fix reading of many blank lines in a row Fixes #9020. LGTM=bradfitz, r R=r, bradfitz CC=golang-codereviews https://golang.org/cl/170030043 --- src/bufio/scan_test.go | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'src/bufio/scan_test.go') diff --git a/src/bufio/scan_test.go b/src/bufio/scan_test.go index a1cf90ddbf..bf888dafb5 100644 --- a/src/bufio/scan_test.go +++ b/src/bufio/scan_test.go @@ -489,6 +489,18 @@ func TestDontLoopForever(t *testing.T) { } } +func TestBlankLines(t *testing.T) { + s := NewScanner(strings.NewReader(strings.Repeat("\n", 1000))) + for count := 0; s.Scan(); count++ { + if count > 2000 { + t.Fatal("looping") + } + } + if s.Err() != nil { + t.Fatal("after scan:", s.Err()) + } +} + type countdown int func (c *countdown) split(data []byte, atEOF bool) (advance int, token []byte, err error) { -- cgit v1.3