4
0
mirror of git://sourceware.org/git/newlib-cygwin.git synced 2025-01-19 04:49:25 +08:00

Revert "Cygwin: check for STATUS_PENDING in fhandler_base::raw_read"

This reverts commit 10bf30bebf7feebbc3e376cbcac62a242cc240f3.  It was
made because an incorrect implementation of duplex FIFOs.
This commit is contained in:
Ken Brown 2019-05-09 10:41:41 -04:00
parent 1559faf0f2
commit e1d5be1783

View File

@ -215,23 +215,11 @@ fhandler_base::raw_read (void *ptr, size_t& len)
NTSTATUS status;
IO_STATUS_BLOCK io;
int try_noreserve = 1;
DWORD waitret = WAIT_OBJECT_0;
retry:
status = NtReadFile (get_handle (), NULL, NULL, NULL, &io, ptr, len,
NULL, NULL);
if (status == STATUS_PENDING)
{
waitret = cygwait (get_handle (), cw_infinite,
cw_cancel | cw_sig_eintr);
if (waitret == WAIT_OBJECT_0)
status = io.Status;
}
if (waitret == WAIT_CANCELED)
pthread::static_cancel_self ();
else if (waitret == WAIT_SIGNALED)
set_errno (EINTR);
else if (NT_SUCCESS (status))
if (NT_SUCCESS (status))
len = io.Information;
else
{