mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-06-17 09:10:22 +02:00
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.
This commit is contained in:
parent
be632904ca
commit
c932ce0b55
6 changed files with 63 additions and 38 deletions
|
@ -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))
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue