From 0eaf24fead7c2a82847f195e9077b5010ace82da Mon Sep 17 00:00:00 2001 From: Christopher Faylor Date: Wed, 23 Apr 2003 01:27:51 +0000 Subject: * select.cc (fhandler_pipe::ready_for_read): Assure that get_guard is called for successful non-blocking pipe reads. --- winsup/cygwin/select.cc | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'winsup/cygwin/select.cc') diff --git a/winsup/cygwin/select.cc b/winsup/cygwin/select.cc index 1a9069626..100d6f263 100644 --- a/winsup/cygwin/select.cc +++ b/winsup/cygwin/select.cc @@ -586,11 +586,15 @@ pipe_cleanup (select_record *, select_stuff *stuff) int fhandler_pipe::ready_for_read (int fd, DWORD howlong) { - if (!howlong) - return fhandler_base::ready_for_read (fd, howlong); + int res; + if (howlong) + res = true; + else + res = fhandler_base::ready_for_read (fd, howlong); - get_guard (); - return true; + if (res) + get_guard (); + return res; } select_record * -- cgit v1.2.3