summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorAndy Wingo <wingo@pobox.com>2017-03-01 17:25:59 +0100
committerAndy Wingo <wingo@pobox.com>2017-03-01 17:27:56 +0100
commit24eea1be08391475fe932f44df51ebe1aca75a2b (patch)
tree22d69f74cc401af1d399a944d7e5dff7451830ba /doc
parent0660364998a5d6492858cd7270e7e7349521711d (diff)
downloadguile-24eea1be08391475fe932f44df51ebe1aca75a2b.tar.gz
"select" no longer throws exception on EINTR
* doc/ref/posix.texi (Ports and File Descriptors): Update. * libguile/filesys.c (scm_select): Use scm_std_select so that pending interrupts can be delivered. On EINTR or EAGAIN, just return directly so that calling Scheme code can run asyncs.
Diffstat (limited to 'doc')
-rw-r--r--doc/ref/posix.texi8
1 files changed, 4 insertions, 4 deletions
diff --git a/doc/ref/posix.texi b/doc/ref/posix.texi
index 4afe6bf20..6f9ce545e 100644
--- a/doc/ref/posix.texi
+++ b/doc/ref/posix.texi
@@ -529,10 +529,10 @@ to provide input, accept output, or the existence of
exceptional conditions on a collection of ports or file
descriptors, or waiting for a timeout to occur.
-When an error occurs, of if it is interrupted by a signal, this
-procedure throws a @code{system-error} exception
-(@pxref{Conventions, @code{system-error}}). In case of an
-interruption, the associated error number is @var{EINTR}.
+When an error occurs, this procedure throws a @code{system-error}
+exception (@pxref{Conventions, @code{system-error}}). Note that
+@code{select} may return early for other reasons, for example due to
+pending interrupts. @xref{Asyncs}, for more on interrupts.
@var{reads}, @var{writes} and @var{excepts} can be lists or
vectors, with each member a port or a file descriptor.