diff options
Diffstat (limited to 'libguile/gc.c')
-rw-r--r-- | libguile/gc.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/libguile/gc.c b/libguile/gc.c index 9c90dc31c..b7dcbc349 100644 --- a/libguile/gc.c +++ b/libguile/gc.c @@ -2071,7 +2071,7 @@ SCM_DEFINE (scm_unhash_name, "unhash-name", 1, 0, 0, scm_bits_t word0 = SCM_CELL_WORD_0 (cell) - scm_tc3_cons_gloc; SCM gloc_car = SCM_PACK (word0); /* access as gloc */ SCM vcell = SCM_CELL_OBJECT_1 (gloc_car); - if ((SCM_TRUE_P (name) || SCM_EQ_P (SCM_CAR (gloc_car), name)) + if ((SCM_EQ_P (name, SCM_BOOL_T) || SCM_EQ_P (SCM_CAR (gloc_car), name)) && (SCM_UNPACK (vcell) != 0) && (SCM_UNPACK (vcell) != 1)) { SCM_SET_CELL_OBJECT_0 (cell, name); |