summaryrefslogtreecommitdiff
path: root/libguile/dynwind.c
diff options
context:
space:
mode:
authorMikael Djurfeldt <djurfeldt@nada.kth.se>2000-03-22 02:09:10 +0000
committerMikael Djurfeldt <djurfeldt@nada.kth.se>2000-03-22 02:09:10 +0000
commit15237f3002a749715747e30c9c7952da5edbe7c5 (patch)
tree3204525d6c89494049bdffe9b030e5fda075170d /libguile/dynwind.c
parent9c6599f96bb498fd044766ffa29f1a783c294fe6 (diff)
downloadguile-15237f3002a749715747e30c9c7952da5edbe7c5.tar.gz
* dynwind.c (scm_swap_bindings): Ditto.
Diffstat (limited to 'libguile/dynwind.c')
-rw-r--r--libguile/dynwind.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/libguile/dynwind.c b/libguile/dynwind.c
index 304ba7711..3108f17c6 100644
--- a/libguile/dynwind.c
+++ b/libguile/dynwind.c
@@ -186,7 +186,8 @@ scm_swap_bindings (SCM glocs, SCM vals)
while (SCM_NIMP (vals))
{
tmp = SCM_GLOC_VAL (SCM_CAR (glocs));
- SCM_SETCDR (SCM_CAR (glocs) - 1L, SCM_CAR (vals));
+ SCM_SETCDR (SCM_PACK (SCM_UNPACK (SCM_CAR (glocs)) - 1L),
+ SCM_CAR (vals));
SCM_SETCAR (vals, tmp);
glocs = SCM_CDR (glocs);
vals = SCM_CDR (vals);