From b0675254fbc1a134e1fbb9af23c71a8c3e032ed7 Mon Sep 17 00:00:00 2001 From: Vito Caputo Date: Sun, 24 Nov 2019 13:26:23 -0800 Subject: montage: skip pixbounce Segfaults were observed when montage came up in rtv, since pixbounce doesn't seem to be rendering properly at all just skip it for now. I suspect what's happening is rtv ran pixbounce before running montage, and pixbounce caches fragment knowledge @ initialization. So when montage ran pixbounce in a tile, that stale fragment knowledge was used and caused scribbling. Stars probably has similar problems actually. --- src/modules/montage/montage.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/modules/montage/montage.c b/src/modules/montage/montage.c index 068c6e0..5502bae 100644 --- a/src/modules/montage/montage.c +++ b/src/modules/montage/montage.c @@ -12,6 +12,7 @@ typedef struct montage_context_t { const rototiller_module_t **modules; const rototiller_module_t *rtv_module; + const rototiller_module_t *pixbounce_module; void **contexts; size_t n_modules; unsigned n_cpus; @@ -46,6 +47,10 @@ static int skip_module(montage_context_t *ctxt, const rototiller_module_t *modul if (module == ctxt->rtv_module) return 1; + /* pixbounce is broken */ + if (module == ctxt->pixbounce_module) + return 1; + return 0; } @@ -65,6 +70,7 @@ static void * montage_create_context(unsigned num_cpus) } ctxt->rtv_module = rototiller_lookup_module("rtv"); + ctxt->pixbounce_module = rototiller_lookup_module("pixbounce"); for (int i = 0; i < ctxt->n_modules; i++) { const rototiller_module_t *module = ctxt->modules[i]; -- cgit v1.2.3