mirror of
https://github.com/golang/go
synced 2024-11-23 14:00:03 -07:00
Revert "bufio: make Reader.Peek invalidate Unreads"
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 ae238688d2
.
Change-Id: Ib67b8629e3deac5d50d76581aba6a91ca7a7853e
Reviewed-on: https://go-review.googlesource.com/47570
Reviewed-by: Russ Cox <rsc@golang.org>
This commit is contained in:
parent
b5240daa2f
commit
e71285c4c3
@ -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
|
||||
}
|
||||
|
@ -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})
|
||||
|
Loading…
Reference in New Issue
Block a user