4
0
mirror of git://sourceware.org/git/newlib-cygwin.git synced 2025-02-03 13:00:39 +08:00
Ken Brown cd402773ce Cygwin: FIFO: code simplification
There are currently three functions that call NtQueryInformationFile
to determine the state of a pipe instance.  Do this only once, in a
new fifo_client_handler::set_state () function, and call that when
state information is needed.

Remove the fifo_client_handler methods pipe_state and get_state, which
are no longer needed.

Make fhandler_fifo::get_fc_handler return a reference, for use in
select.cc:peek_fifo.

Make other small changes to ensure that this commit doesn't change any
decisions based on the state of a fifo_client_handler.

The tricky part is interpreting FILE_PIPE_CLOSING_STATE, which we
translate to fc_closing.  Our current interpretation, which is not
changing as a result of this commit, is that the writer at the other
end of the pipe instance is viewed as still connected from the point
of view of raw_read and determining EOF.

But it is not viewed as still connected if we are deciding whether to
unblock a new reader that is trying to open.
2020-10-14 10:54:19 -04:00
..
2016-06-25 00:43:01 +02:00
2020-10-14 10:54:03 -04:00
2020-10-14 10:54:03 -04:00
2018-02-20 17:59:53 +01:00
2020-10-14 10:54:19 -04:00
2017-03-27 22:03:58 +01:00
2018-04-16 22:46:11 -05:00
2018-02-07 13:07:44 +01:00
2020-10-14 10:54:19 -04:00
2020-10-14 10:53:55 -04:00
2020-10-14 10:53:55 -04:00
2020-10-14 10:53:56 -04:00