diff options
author | surles <surles> | 1998-08-03 18:25:11 (GMT) |
---|---|---|
committer | surles <surles> | 1998-08-03 18:25:11 (GMT) |
commit | 053ef46b521907064f999b509df13a9c6cb9b1d6 (patch) | |
tree | 6aa83048c513563ae1468a32cea5ce181d5d442d /unix/tclUnixPort.h | |
parent | 2cc40581c1216aca07b540c156b3cb9e1550fba1 (diff) | |
download | tcl-053ef46b521907064f999b509df13a9c6cb9b1d6.zip tcl-053ef46b521907064f999b509df13a9c6cb9b1d6.tar.gz tcl-053ef46b521907064f999b509df13a9c6cb9b1d6.tar.bz2 |
Fixed EINTR bug
Diffstat (limited to 'unix/tclUnixPort.h')
-rw-r--r-- | unix/tclUnixPort.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/unix/tclUnixPort.h b/unix/tclUnixPort.h index f99910f..3b0eb62 100644 --- a/unix/tclUnixPort.h +++ b/unix/tclUnixPort.h @@ -492,4 +492,20 @@ extern double strtod(); EXTERN int TclUnixWaitForFile _ANSI_ARGS_((int fd, int mask, int timeout)); +/* + * Substitute Tcl's own versions for several system calls. The + * Tcl versions retry automatically if interrupted by signals. + * (see tclUnixUtil.c). + */ + +#define open(a,b,c) TclOpen(a,b,c) +#define read(a,b,c) TclRead(a,b,c) +#define waitpid(a,b,c) TclWaitpid(a,b,c) +#define write(a,b,c) TclWrite(a,b,c) +EXTERN int TclOpen _ANSI_ARGS_((char *path, int oflag, int mode)); +EXTERN int TclRead _ANSI_ARGS_((int fd, VOID *buf, size_t numBytes)); +EXTERN int TclWaitpid _ANSI_ARGS_((pid_t pid, int *statPtr, int options)); +EXTERN int TclWrite _ANSI_ARGS_((int fd, VOID *buf, size_t numBytes)); + + #endif /* _TCLUNIXPORT */ |