summaryrefslogtreecommitdiff
path: root/libpipe
diff options
context:
space:
mode:
authorMiles Bader <miles@gnu.org>1995-09-01 14:42:35 +0000
committerMiles Bader <miles@gnu.org>1995-09-01 14:42:35 +0000
commit6619797c248578ea5737bb95651d42d06f39e060 (patch)
treee366eb809d05f8a110187569e6383914880013f1 /libpipe
parent39f0c81e2e4d3d5991d9da24496f575c4fd07aee (diff)
(_pipe_no_readers): Wake up write selects too when the pipe breaks.
Diffstat (limited to 'libpipe')
-rw-r--r--libpipe/pipe.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/libpipe/pipe.c b/libpipe/pipe.c
index 33a6751d..036cc2f3 100644
--- a/libpipe/pipe.c
+++ b/libpipe/pipe.c
@@ -110,7 +110,10 @@ void _pipe_no_readers (struct pipe *pipe)
pipe->flags |= PIPE_BROKEN;
if (pipe->readers)
/* Wake up writers for the bad news... */
- condition_broadcast (&pipe->pending_writes);
+ {
+ condition_broadcast (&pipe->pending_writes);
+ condition_broadcast (&pipe->pending_write_selects);
+ }
}
mutex_unlock (&pipe->lock);
}