diff options
author | Andy Wingo <wingo@pobox.com> | 2025-05-04 10:01:50 +0200 |
---|---|---|
committer | Andy Wingo <wingo@pobox.com> | 2025-05-04 10:01:50 +0200 |
commit | 8cb15a9e1b7206af06327d8be5624353dab052da (patch) | |
tree | 22e6e4e0fef30e22f7d336809a337db46f40744f | |
parent | 17ca7a928e32dfa67aa986b55d214614c835927c (diff) | |
download | guile-8cb15a9e1b7206af06327d8be5624353dab052da.tar.gz |
More refactors off BDW API
* libguile/gc.c (gc): Use Guile finalization API, not BDW.
* libguile/threads.c (guilify_self_2): Don't finalize here.
-rw-r--r-- | libguile/gc.c | 3 | ||||
-rw-r--r-- | libguile/threads.c | 3 |
2 files changed, 2 insertions, 4 deletions
diff --git a/libguile/gc.c b/libguile/gc.c index 927394393..42c93cfc3 100644 --- a/libguile/gc.c +++ b/libguile/gc.c @@ -36,6 +36,7 @@ #include "deprecation.h" #include "dynwind.h" #include "eval.h" +#include "finalizers.h" #include "gen-scmconfig.h" #include "gsubr.h" #include "hashtab.h" @@ -440,7 +441,7 @@ SCM_DEFINE (scm_gc, "gc", 0, 0, 0, scm_i_gc ("call"); /* If you're calling scm_gc(), you probably want synchronous finalization. */ - GC_invoke_finalizers (); + scm_run_finalizers (); return SCM_UNSPECIFIED; } #undef FUNC_NAME diff --git a/libguile/threads.c b/libguile/threads.c index 69e422f76..bf9997ed7 100644 --- a/libguile/threads.c +++ b/libguile/threads.c @@ -464,9 +464,6 @@ guilify_self_2 (SCM dynamic_state) t->dynstack.top = t->dynstack.base + SCM_DYNSTACK_HEADER_LEN; t->block_asyncs = 0; - - /* See note in finalizers.c:queue_finalizer_async(). */ - GC_invoke_finalizers (); } |