summaryrefslogtreecommitdiff
path: root/libguile/root.c
diff options
context:
space:
mode:
authorMarius Vollmer <mvo@zagadka.de>2002-10-27 20:16:18 +0000
committerMarius Vollmer <mvo@zagadka.de>2002-10-27 20:16:18 +0000
commit1ceead47c4e4bbc734a19f51a14502eabfa6bac6 (patch)
tree45972421d8ef37d653e270fc589bdf75fc5d15a6 /libguile/root.c
parent2132f0d2a50b554776177650f4dd02050766fdf9 (diff)
downloadguile-1ceead47c4e4bbc734a19f51a14502eabfa6bac6.tar.gz
* __scm.h (SCM_ASYNC_CLICK): Check pending_asyncs instead of
active_asyncs. * root.h (scm_root_state): Added pending_asyncs and signal_asyncs fields. * root.c (root_mark): Mark them. (make_root): Initialize them.
Diffstat (limited to 'libguile/root.c')
-rw-r--r--libguile/root.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/libguile/root.c b/libguile/root.c
index 3017a16c0..7c5a26c93 100644
--- a/libguile/root.c
+++ b/libguile/root.c
@@ -81,6 +81,7 @@ root_mark (SCM root)
/* No need to gc mark def_loadp */
scm_gc_mark (s->fluids);
scm_gc_mark (s->active_asyncs);
+ scm_gc_mark (s->signal_asyncs);
return SCM_ROOT_STATE (root) -> parent;
}
@@ -131,7 +132,9 @@ scm_make_root (SCM parent)
}
root_state->active_asyncs = SCM_EOL;
+ root_state->signal_asyncs = SCM_EOL;
root_state->block_asyncs = 0;
+ root_state->pending_asyncs = 1;
SCM_REDEFER_INTS;
SCM_NEWSMOB (root, scm_tc16_root, root_state);