diff options
author | Andy Wingo <wingo@pobox.com> | 2012-02-19 12:34:20 +0100 |
---|---|---|
committer | Andy Wingo <wingo@pobox.com> | 2012-02-19 13:30:30 +0100 |
commit | 3753e22736feb56ad22ec802bbad16e080066789 (patch) | |
tree | b5143e8bf15dd1c62ce32a7131975c006f44ce1f /libguile/init.c | |
parent | bc1bc9e32088958c1b381f9ec0056e40340433a1 (diff) | |
download | guile-3753e22736feb56ad22ec802bbad16e080066789.tar.gz |
move revealed-count mechanism to fports.c
* libguile/fports.c (scm_revealed_count, scm_port_revealed)
(scm_set_port_revealed_x, scm_adjust_port_revealed_x): Move these APIs
here, and only operate on fports. To keep revealed ports alive, now
we will just keep them in a data structure that the GC knows about --
a static list.
* libguile/fports.h: Add revealed count to scm_t_fport, and move decls
of revealed-count functions here.
* libguile/ports.h:
* libguile/ports.c: Adapt to change. Remove SCM_REVEALED and
SCM_SETREVEALED; since they only apply to fports now, keeping them
around would be inviting type errors.
(finalize_port): We don't need to worry about resuscitating ports
here.
* libguile/init.c: Use the scm_set_port_revealed_x function to set the
revealed counts on stream ports.
Diffstat (limited to 'libguile/init.c')
-rw-r--r-- | libguile/init.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/libguile/init.c b/libguile/init.c index 35fbedb8b..7dec116fa 100644 --- a/libguile/init.c +++ b/libguile/init.c @@ -165,8 +165,7 @@ stream_body (void *data) { stream_body_data *body_data = (stream_body_data *) data; SCM port = scm_fdes_to_port (body_data->fdes, body_data->mode, SCM_BOOL_F); - - SCM_REVEALED (port) = 1; + scm_set_port_revealed_x (port, SCM_INUM1); return port; } |