summaryrefslogtreecommitdiff
path: root/src/pkg/io/pipe.go
AgeCommit message (Collapse)AuthorFilesLines
2013-12-03Imported Upstream version 1.2upstream/1.2Michael Stapelberg1-0/+4
2012-04-06Imported Upstream version 1upstream/1Ondřej Surý1-22/+29
2011-09-13Imported Upstream version 60upstream/60Ondřej Surý1-0/+182
2011-09-13Imported Upstream version 60Ondřej Surý1-182/+0
2011-04-26Imported Upstream version 2011.04.13upstream/2011.04.13Ondřej Surý1-215/+92
2011-01-17Imported Upstream version 2011.01.12upstream/2011.01.12Ondřej Surý1-8/+19
2010-06-30io: Avoid race condition in pipe.Ian Lance Taylor1-1/+2
One goroutine started up and was waiting in rw. Then another goroutine decided to close the pipe. The closing goroutine stalled calling p.io.Lock() in pipeHalf.close. (This happened in gccgo). If the closing goroutine had been able to set the ioclosed flag, it would have gone on to tell the runner that the pipe was closed, which would then send an EINVAL to the goroutine sleeping in rw. Unlocking p.io before sleeping in rw avoids the race. R=rsc, rsc1 CC=golang-dev http://codereview.appspot.com/1682048
2010-04-27pipe: implementation #3; this time for sure!Russ Cox1-118/+208
Added goroutine; got simpler. Fixes deadlock when doing Read+Close or Write+Close on same end. R=r, cw CC=golang-dev http://codereview.appspot.com/994043
2010-02-01io: revised Pipe implementationRuss Cox1-61/+41
* renamed channels to say what gets sent * use channel closed status instead of racy check of boolean R=nigeltao_golang CC=golang-dev http://codereview.appspot.com/196065
2010-01-28io: fix nil Write bug in PipeRuss Cox1-1/+1
R=nigeltao_golang CC=golang-dev http://codereview.appspot.com/194132
2009-12-151) Change default gofmt default settings forRobert Griesemer1-61/+61
parsing and printing to new syntax. Use -oldparser to parse the old syntax, use -oldprinter to print the old syntax. 2) Change default gofmt formatting settings to use tabs for indentation only and to use spaces for alignment. This will make the code alignment insensitive to an editor's tabwidth. Use -spaces=false to use tabs for alignment. 3) Manually changed src/exp/parser/parser_test.go so that it doesn't try to parse the parser's source files using the old syntax (they have new syntax now). 4) gofmt -w src misc test/bench 3rd set of files. R=rsc CC=golang-dev http://codereview.appspot.com/180048
2009-11-20gofmt -r 'α[β:len(α)] -> α[β:]' -w src/cmd src/pkgRuss Cox1-1/+1
R=r, gri CC=golang-dev http://codereview.appspot.com/156115
2009-11-09remove semis after statements in one-statement statement listsRobert Griesemer1-13/+13
R=rsc, r http://go/go-review/1025029
2009-11-06- fine-tuning of one-line func heuristic (nodes.go)Robert Griesemer1-6/+2
- enabled for function declarations (not just function literals) - applied gofmt -w $GOROOT/src (look for instance at src/pkg/debug/elf/elf.go) R=r, rsc CC=go-dev http://go/go-review/1026006
2009-10-08more lgtm files from gofmtRuss Cox1-1/+1
R=gri OCL=35485 CL=35488
2009-10-06apply gofmt to go, gob, hash, http, image, io, json, logRuss Cox1-16/+15
R=gri DELTA=1359 (138 added, 32 deleted, 1189 changed) OCL=35408 CL=35420
2009-08-12convert low-level (used by testing) packages toRuss Cox1-1/+0
whole-package compilation. new Makefiles, tests now in separate package bytes flag fmt io math once os reflect strconv sync time utf8 delete import "xxx" in package xxx. inside package xxx, xxx is not declared anymore so s/xxx.//g delete file and package level forward declarations. note the new internal_test.go and sync and strconv to provide public access to internals during testing. the installed version of the package omits that file and thus does not open the internals to all clients. R=r OCL=33065 CL=33097
2009-06-22introduce os.EOF and io.ErrUnexpectedEOF.Russ Cox1-0/+3
remove io.ErrEOF. rename io.FullRead to io.ReadFull, to match ReadAtLeast and ReadAll. remove io.FullReader, because it is now unused. R=r DELTA=295 (88 added, 105 deleted, 102 changed) OCL=30544 CL=30588
2009-06-09mv src/lib to src/pkgRob Pike1-0/+226
tests: all.bash passes, gobuild still works, godoc still works. R=rsc OCL=30096 CL=30102