]> Cypherpunks.ru repositories - gostls13.git/commitdiff
Revert "bufio: make Reader.Peek invalidate Unreads"
authorRuss Cox <rsc@golang.org>
Thu, 6 Jul 2017 03:06:08 +0000 (03:06 +0000)
committerRuss Cox <rsc@golang.org>
Thu, 6 Jul 2017 03:06:44 +0000 (03:06 +0000)
Go 1.9 beta 2 is already out.
It's too late to break code with a change like this.
This can be rolled forward for Go 1.10.

This reverts commit ae238688d2813e83f16050408487ea34ba1c2fff.

Change-Id: Ib67b8629e3deac5d50d76581aba6a91ca7a7853e
Reviewed-on: https://go-review.googlesource.com/47570
Reviewed-by: Russ Cox <rsc@golang.org>
src/bufio/bufio.go
src/bufio/bufio_test.go

index f1a270336fc1c693dc53e35bfb52fac7b5aecf0d..da94a2503f0a8fdb4caf7ba446511589881a41b0 100644 (file)
@@ -125,9 +125,6 @@ func (b *Reader) Peek(n int) ([]byte, error) {
                return nil, ErrNegativeCount
        }
 
-       b.lastByte = -1
-       b.lastRuneSize = -1
-
        for b.w-b.r < n && b.w-b.r < len(b.buf) && b.err == nil {
                b.fill() // b.w-b.r < len(b.buf) => buffer is not full
        }
index 50f571c04f0e5d8ba431f87ffef2edf483621a26..ef0f6c834e86230f9f7d63c3dfd407022afdb8a7 100644 (file)
@@ -285,24 +285,6 @@ func TestUnreadRune(t *testing.T) {
        }
 }
 
-func TestNoUnreadRuneAfterPeek(t *testing.T) {
-       br := NewReader(strings.NewReader("example"))
-       br.ReadRune()
-       br.Peek(1)
-       if err := br.UnreadRune(); err == nil {
-               t.Error("UnreadRune didn't fail after Peek")
-       }
-}
-
-func TestNoUnreadByteAfterPeek(t *testing.T) {
-       br := NewReader(strings.NewReader("example"))
-       br.ReadByte()
-       br.Peek(1)
-       if err := br.UnreadByte(); err == nil {
-               t.Error("UnreadByte didn't fail after Peek")
-       }
-}
-
 func TestUnreadByte(t *testing.T) {
        segments := []string{"Hello, ", "world"}
        r := NewReader(&StringReader{data: segments})