diff options
author | Christopher Faylor <me@cgf.cx> | 2009-12-23 00:35:18 +0000 |
---|---|---|
committer | Christopher Faylor <me@cgf.cx> | 2009-12-23 00:35:18 +0000 |
commit | 4c9a77261e713f62248a79cc6b68290764da2b71 (patch) | |
tree | 37b513f67d68b5615e7427ca2b8dd7fd52d1d394 /winsup | |
parent | b2e79f980050562756250491e135cb3e5072b82f (diff) | |
download | newlib-4c9a77261e713f62248a79cc6b68290764da2b71.zip newlib-4c9a77261e713f62248a79cc6b68290764da2b71.tar.gz newlib-4c9a77261e713f62248a79cc6b68290764da2b71.tar.bz2 |
* select.cc (fhandler_fifo::select_read): Fill in device specific record.
(fhandler_fifo::select_write): Ditto.
(fhandler_fifo::select_except): Ditto.
Diffstat (limited to 'winsup')
-rw-r--r-- | winsup/cygwin/ChangeLog | 7 | ||||
-rw-r--r-- | winsup/cygwin/select.cc | 9 |
2 files changed, 16 insertions, 0 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index 385115a..26291f0 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,3 +1,10 @@ +2009-12-22 Christopher Faylor <me+cygwin@cgf.cx> + + * select.cc (fhandler_fifo::select_read): Fill in device specific + record. + (fhandler_fifo::select_write): Ditto. + (fhandler_fifo::select_except): Ditto. + 2009-12-21 Corinna Vinschen <corinna@vinschen.de> * path.cc (cygwin_conv_path): Add band-aid including comment to avoid diff --git a/winsup/cygwin/select.cc b/winsup/cygwin/select.cc index 1cd18e7..64c3cde 100644 --- a/winsup/cygwin/select.cc +++ b/winsup/cygwin/select.cc @@ -742,6 +742,9 @@ fhandler_pipe::select_except (select_stuff *ss) select_record * fhandler_fifo::select_read (select_stuff *ss) { + if (!ss->device_specific_pipe + && (ss->device_specific_pipe = new select_pipe_info) == NULL) + return NULL; select_record *s = ss->start.next; s->startup = start_thread_pipe; s->peek = peek_pipe; @@ -755,6 +758,9 @@ fhandler_fifo::select_read (select_stuff *ss) select_record * fhandler_fifo::select_write (select_stuff *ss) { + if (!ss->device_specific_pipe + && (ss->device_specific_pipe = new select_pipe_info) == NULL) + return NULL; select_record *s = ss->start.next; s->startup = start_thread_pipe; s->peek = peek_pipe; @@ -768,6 +774,9 @@ fhandler_fifo::select_write (select_stuff *ss) select_record * fhandler_fifo::select_except (select_stuff *ss) { + if (!ss->device_specific_pipe + && (ss->device_specific_pipe = new select_pipe_info) == NULL) + return NULL; select_record *s = ss->start.next; s->startup = start_thread_pipe; s->peek = peek_pipe; |