Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristopher Faylor <me@cgf.cx>2011-05-31 04:26:37 +0400
committerChristopher Faylor <me@cgf.cx>2011-05-31 04:26:37 +0400
commit106e3acf59e11aae4d0ffe97492f7d4ecd6db5cb (patch)
treebafe1167364fb4cf895c8b7c6609e70e1442aa5e /winsup/cygwin/fhandler.h
parentde3c57f06e3b8244c44e7203dc50cfad8a68f130 (diff)
* dtable.cc (dtable::select_write): Add missing argument to debug_printf.
* fhandler.cc (fhandler_base_overlapped::setup_overlapped): Explicitly set io_pending to false. (fhandler_base_overlapped::has_ongoing_io): Call GetOverlappedResult to force completion of I/O. (fhandler_base_overlapped::wait_overlapped): Rewrite to correctly deal with nonblocking reads and to make more race proof. (fhandler_base_overlapped::raw_write): Deal with new enum values. (fhandler_base_overlapped::raw_read): Ditto. Don't deal with ongoing I/O here since it makes no sense in the read context. * fhandler.h (enum wait_return): Add overlapped_unknown, overlapped_nonblocking_no_data. * pipe.cc (pipe): Add debugging output.
Diffstat (limited to 'winsup/cygwin/fhandler.h')
-rw-r--r--winsup/cygwin/fhandler.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/winsup/cygwin/fhandler.h b/winsup/cygwin/fhandler.h
index e8a503481..2e7f6b500 100644
--- a/winsup/cygwin/fhandler.h
+++ b/winsup/cygwin/fhandler.h
@@ -578,8 +578,10 @@ class fhandler_base_overlapped: public fhandler_base
protected:
enum wait_return
{
- overlapped_success = 0,
+ overlapped_unknown = 0,
+ overlapped_success,
overlapped_signal,
+ overlapped_nonblocking_no_data,
overlapped_error
};
bool io_pending;