* fports.c (scm_fdes_to_port): call fcntl F_GETFL to test that
authorGary Houston <ghouston@arglist.com>
Sun, 12 Mar 2000 19:58:56 +0000 (19:58 +0000)
committerGary Houston <ghouston@arglist.com>
Sun, 12 Mar 2000 19:58:56 +0000 (19:58 +0000)
commit19b27fa236d0a5e20a01443070a4bcffe025af05
tree47acaaa74c16538afcd08006a57901c56e205559
parentf8a72ca4c983b3e4c19bffb9ec1e9b433331df8b
* fports.c (scm_fdes_to_port): call fcntl F_GETFL to test that
the fdes is valid before doing anything else.  check that
the file descriptor supports the modes required.
(scm_fport_buffer_add): don't throw an error if fstat doesn't
work: just use the default buffer size.

* throw.c: change an outdated comment about scm_internal_catch
BODY: it doesn't take a jumpbuf arg.

* init.c (scm_standard_stream_to_port): install a handler in case
scm_fdes_to_port throws an error.  don't check here whether the
file descriptor is valid, since scm_fdes_to_port will do that.
set the revealed count depending on whether the port got the
standard file descriptor.
(stream_body_data): new type.
(stream_body, stream_handler): new procs.
libguile/fports.c
libguile/init.c
libguile/ioext.c
libguile/throw.c