* cygtls.h (_cygtls::inside_kernel): Move function declaration into _cygtls

class.
* exceptions.cc (_cygtls::inside_kernel): Move function definition into _cygtls
class.
* fhandler.cc (fhandler_base::wait_overlapped): Make return tri-state to detect
when there is a EINTR situation.  Add a pointer to a length parameter.  Move
GetOverlappedResult into this function.
(fhandler_base::read_overlapped): Accommodate above changes and loop if we
receive a restartable signal.
(fhandler_base::write_overlapped): Ditto.
* fhandler.h (fhandler_base::wait_overlapped): Reflect above changes.
* fhandler_fifo.cc (fhandler_fifo::wait): Ditto.
This commit is contained in:
Christopher Faylor
2007-07-29 05:22:05 +00:00
parent 81e98baf81
commit ee2984326b
6 changed files with 61 additions and 23 deletions

View File

@ -139,7 +139,7 @@ class fhandler_base
DWORD fs_flags;
HANDLE read_state;
path_conv pc;
bool wait_overlapped (bool&, bool) __attribute__ ((regparm (2)));
int wait_overlapped (bool&, bool, DWORD *) __attribute__ ((regparm (3)));
bool setup_overlapped () __attribute__ ((regparm (1)));
void destroy_overlapped () __attribute__ ((regparm (1)));