mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-04-30 03:40:34 +02:00
fix arbiter compilation with the generic codepath
* libguile/arbiters.c (scm_try_arbiter, scm_release_arbiter): Fix for the generic case; not sure why it wasn't working.
This commit is contained in:
parent
7230aaf961
commit
393301c519
1 changed files with 6 additions and 2 deletions
|
@ -121,8 +121,10 @@ SCM_DEFINE (scm_try_arbiter, "try-arbiter", 1, 0, 0,
|
||||||
#define FUNC_NAME s_scm_try_arbiter
|
#define FUNC_NAME s_scm_try_arbiter
|
||||||
{
|
{
|
||||||
scm_t_bits old;
|
scm_t_bits old;
|
||||||
|
scm_t_bits *loc;
|
||||||
SCM_VALIDATE_SMOB (1, arb, arbiter);
|
SCM_VALIDATE_SMOB (1, arb, arbiter);
|
||||||
FETCH_STORE (old, SCM_SMOB_DATA_0 (arb), SCM_LOCK_VAL);
|
loc = (scm_t_bits*)SCM_SMOB_OBJECT_N_LOC (arb, 0);
|
||||||
|
FETCH_STORE (old, *loc, SCM_LOCK_VAL);
|
||||||
return scm_from_bool (old == SCM_UNLOCK_VAL);
|
return scm_from_bool (old == SCM_UNLOCK_VAL);
|
||||||
}
|
}
|
||||||
#undef FUNC_NAME
|
#undef FUNC_NAME
|
||||||
|
@ -147,8 +149,10 @@ SCM_DEFINE (scm_release_arbiter, "release-arbiter", 1, 0, 0,
|
||||||
#define FUNC_NAME s_scm_release_arbiter
|
#define FUNC_NAME s_scm_release_arbiter
|
||||||
{
|
{
|
||||||
scm_t_bits old;
|
scm_t_bits old;
|
||||||
|
scm_t_bits *loc;
|
||||||
SCM_VALIDATE_SMOB (1, arb, arbiter);
|
SCM_VALIDATE_SMOB (1, arb, arbiter);
|
||||||
FETCH_STORE (old, SCM_SMOB_DATA_0 (arb), SCM_UNLOCK_VAL);
|
loc = (scm_t_bits*)SCM_SMOB_OBJECT_N_LOC (arb, 0);
|
||||||
|
FETCH_STORE (old, *loc, SCM_UNLOCK_VAL);
|
||||||
return scm_from_bool (old == SCM_LOCK_VAL);
|
return scm_from_bool (old == SCM_LOCK_VAL);
|
||||||
}
|
}
|
||||||
#undef FUNC_NAME
|
#undef FUNC_NAME
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue