diff options
-rw-r--r-- | libguile/ChangeLog | 6 | ||||
-rw-r--r-- | libguile/gc.c | 3 |
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); |