summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libguile/ChangeLog6
-rw-r--r--libguile/gc.c3
2 files changed, 7 insertions, 2 deletions
diff --git a/libguile/ChangeLog b/libguile/ChangeLog
index 814a4f180..52a2ffce2 100644
--- a/libguile/ChangeLog
+++ b/libguile/ChangeLog
@@ -1,3 +1,9 @@
+2000-12-07 Dirk Herrmann <D.Herrmann@tu-bs.de>
+
+ * gc.c (scm_init_gc): gc_async is already protected from gc,
+ namely via scm_asyncs. Thanks to Keisuke Nishida for pointing
+ this out.
+
2000-12-07 Keisuke Nishida <kxn30@po.cwru.edu>
* smob.h (scm_smob_apply_0, scm_smob_apply_1, scm_smob_apply_2,
diff --git a/libguile/gc.c b/libguile/gc.c
index 96011f14f..b50281cda 100644
--- a/libguile/gc.c
+++ b/libguile/gc.c
@@ -2581,8 +2581,7 @@ scm_init_gc ()
scm_gc_vcell = scm_sysintern ("gc-thunk", SCM_BOOL_F);
#endif /* SCM_DEBUG_DEPRECATED == 0 */
after_gc_thunk = scm_make_subr_opt ("%gc-thunk", scm_tc7_subr_0, gc_async_thunk, 0);
- gc_async = scm_system_async (after_gc_thunk);
- scm_permanent_object (gc_async);
+ gc_async = scm_system_async (after_gc_thunk); /* protected via scm_asyncs */
scm_c_hook_add (&scm_after_gc_c_hook, mark_gc_async, NULL, 0);