diff options
author | Vito Caputo <vcaputo@pengaru.com> | 2023-08-14 08:28:59 -0700 |
---|---|---|
committer | Vito Caputo <vcaputo@pengaru.com> | 2023-08-14 08:44:24 -0700 |
commit | 4052b22c34a6fa0860781addf5bd2c21e6067bec (patch) | |
tree | 74d3b9f0f841e61cdc47e4d8a88d81b3e798cf8b /src/modules/rkt | |
parent | de93f4460263c6d515abd421b6f83a763d1e3c65 (diff) |
modules/rkt: gc module contexts after scener edits
This triggers immediate cleanup of the replaced context.
It's being done after the new context is fully installed as the
replacement, with an eye towards enabling a baton style handoff
of the existing context's owned pipes to the replacement, for
taps they have in common. That's not being done yet, but it'd be
impossible if the gc occurred before creating the replacement,
since the existing context's pipes would already be untapped (and
removed).
Diffstat (limited to 'src/modules/rkt')
-rw-r--r-- | src/modules/rkt/rkt_scener.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/modules/rkt/rkt_scener.c b/src/modules/rkt/rkt_scener.c index d48caea..446b998 100644 --- a/src/modules/rkt/rkt_scener.c +++ b/src/modules/rkt/rkt_scener.c @@ -1272,6 +1272,7 @@ int rkt_scener_update(rkt_context_t *ctxt) assert(scener->scene < ctxt->n_scenes); ctxt->scenes[scener->scene].module_ctxt = til_module_context_free(ctxt->scenes[scener->scene].module_ctxt); ctxt->scenes[scener->scene].module_ctxt = module_ctxt; + til_stream_gc_module_contexts(ctxt->til_module_context.stream); } } |