diff options
author | Andy Wingo <wingo@pobox.com> | 2011-11-08 00:29:46 +0100 |
---|---|---|
committer | Andy Wingo <wingo@pobox.com> | 2011-11-08 00:55:01 +0100 |
commit | 4251ae2e282385be6d08b0fffab761fcc0fa93aa (patch) | |
tree | 1ed22a034053f088d63fa1c5bfd7f1dbb88a7043 /libguile/fports.c | |
parent | c932ce0b559ceb7a14846241d7b1856c7c3eea3b (diff) | |
download | guile-4251ae2e282385be6d08b0fffab761fcc0fa93aa.tar.gz |
locking on port buffering operations
* libguile/ports.c (scm_fill_input_unlocked, scm_fill_input)
(scm_end_input, scm_end_input_unlocked, scm_flush)
(scm_flush_unlocked): Add locking and _unlocked variants.
* libguile/filesys.c:
* libguile/fports.c:
* libguile/gdbint.c:
* libguile/r6rs-ports.c:
* libguile/read.c:
* libguile/rw.c: Adapt callers to use _unlocked variants.
Diffstat (limited to 'libguile/fports.c')
-rw-r--r-- | libguile/fports.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/libguile/fports.c b/libguile/fports.c index 02fbb05df..41897ac20 100644 --- a/libguile/fports.c +++ b/libguile/fports.c @@ -215,7 +215,7 @@ SCM_DEFINE (scm_setvbuf, "setvbuf", 2, 1, 0, drained = scm_nullstr; if (SCM_OUTPUT_PORT_P (port)) - scm_flush (port); + scm_flush_unlocked (port); if (pt->read_buf == pt->putback_buf) { @@ -717,7 +717,7 @@ fport_seek (SCM port, scm_t_off offset, int whence) if (offset != 0 || whence != SEEK_CUR) { /* could expand to avoid a second seek. */ - scm_end_input (port); + scm_end_input_unlocked (port); result = rv = lseek_or_lseek64 (fp->fdes, offset, whence); } else |