Commit 29eea94a authored by Russ Cox's avatar Russ Cox

os: read only 10,000 bytes at a time from Windows console

Reading 32,767 is too many on some versions of Windows.
The exact upper bound is unclear.

For #13697, but may not fix the problem on all systems.

Change-Id: I197021ed60cbcd33c91ca6ceed456ec3d5a6c9d6
Reviewed-on: https://go-review.googlesource.com/18433Reviewed-by: 's avatarBrad Fitzpatrick <bradfitz@golang.org>
parent 5ccaf025
......@@ -265,8 +265,10 @@ func (f *File) readConsole(b []byte) (n int, err error) {
if len(f.readbuf) == 0 {
numBytes := len(b)
// Windows can't read bytes over max of int16.
if numBytes > 32767 {
numBytes = 32767
// Some versions of Windows can read even less.
// See golang.org/issue/13697.
if numBytes > 10000 {
numBytes = 10000
}
mbytes := make([]byte, numBytes)
var nmb uint32
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment