diff options
author | Russ Cox <rsc@golang.org> | 2010-08-03 01:07:57 -0700 |
---|---|---|
committer | Russ Cox <rsc@golang.org> | 2010-08-03 01:07:57 -0700 |
commit | 545d7a95311de475edb11ce92b848ed28e451c49 (patch) | |
tree | c66b921451129667a006fdf788c07681e7cf0180 /src/pkg/runtime/chan.c | |
parent | 63796575378823bb31fbe99079fc9438958b8bca (diff) | |
download | go-545d7a95311de475edb11ce92b848ed28e451c49.tar.gz |
gc: empty select
R=ken2
CC=golang-dev
http://codereview.appspot.com/1871057
Diffstat (limited to 'src/pkg/runtime/chan.c')
-rw-r--r-- | src/pkg/runtime/chan.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/pkg/runtime/chan.c b/src/pkg/runtime/chan.c index 9e88e824a..16c02e8e7 100644 --- a/src/pkg/runtime/chan.c +++ b/src/pkg/runtime/chan.c @@ -631,9 +631,11 @@ void printf("select: sel=%p\n", sel); if(sel->ncase < 2) { - if(sel->ncase < 1) - throw("select: no cases"); - // make special case of one. + if(sel->ncase < 1) { + g->status = Gwaiting; // forever + gosched(); + } + // TODO: make special case of one. } // select a (relative) prime |