From 659d1df1bcd44ec6bb92f9592a8c92670d862d3c Mon Sep 17 00:00:00 2001 From: Akshat Kumar Date: Mon, 24 Sep 2012 08:30:28 +1000 Subject: [PATCH] pkg/go/ast: Avoid doing zero-length writes to the fd. After each line, ast.Print would do a zero-length write, which would hit the boundary condition on Plan 9 when reading over pipes (since message boundaries are preserved). This change makes sure we only do positive- length writes. R=rsc, rminnich, dave, r CC=golang-dev https://golang.org/cl/6558046 --- src/pkg/go/ast/print.go | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/pkg/go/ast/print.go b/src/pkg/go/ast/print.go index 2de9af299e..4a1ce480f4 100644 --- a/src/pkg/go/ast/print.go +++ b/src/pkg/go/ast/print.go @@ -108,8 +108,10 @@ func (p *printer) Write(data []byte) (n int, err error) { } p.last = b } - m, err = p.output.Write(data[n:]) - n += m + if len(data) > n { + m, err = p.output.Write(data[n:]) + n += m + } return } -- 2.48.1