diff options
author | Andy Wingo <wingo@pobox.com> | 2011-11-08 00:14:16 +0100 |
---|---|---|
committer | Andy Wingo <wingo@pobox.com> | 2011-11-08 00:54:58 +0100 |
commit | c932ce0b559ceb7a14846241d7b1856c7c3eea3b (patch) | |
tree | d3185454f09b517dca6fb6fa95572db9cb0c8a88 /libguile/arrays.c | |
parent | be632904cafd0c5baf38b2ef970acc2c72af6cd3 (diff) | |
download | guile-c932ce0b559ceb7a14846241d7b1856c7c3eea3b.tar.gz |
locking on unget_byte, ungetc, ungets
* libguile/ports.h:
* libguile/ports.c (scm_unget_byte_unlocked, scm_unget_byte)
(scm_ungetc_unlocked, scm_ungetc, scm_ungets_unlocked, scm_ungets):
Add locking and _unlocked variants.
* libguile/arrays.c:
* libguile/rdelim.c:
* libguile/read.c:
* libguile/vports.c: Adapt callers to use the _unlocked variants.
Diffstat (limited to 'libguile/arrays.c')
-rw-r--r-- | libguile/arrays.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/libguile/arrays.c b/libguile/arrays.c index de221a90d..05ddf87e0 100644 --- a/libguile/arrays.c +++ b/libguile/arrays.c @@ -862,7 +862,7 @@ scm_i_read_array (SCM port, int c) */ if (c == '(') { - scm_ungetc (c, port); + scm_ungetc_unlocked (c, port); return scm_vector (scm_read (port)); } @@ -874,7 +874,7 @@ scm_i_read_array (SCM port, int c) if (c != '3' && c != '6') { if (c != EOF) - scm_ungetc (c, port); + scm_ungetc_unlocked (c, port); return SCM_BOOL_F; } rank = 1; @@ -954,7 +954,7 @@ scm_i_read_array (SCM port, int c) scm_i_input_error (NULL, port, "missing '(' in vector or array literal", SCM_EOL); - scm_ungetc (c, port); + scm_ungetc_unlocked (c, port); elements = scm_read (port); if (scm_is_false (shape)) |