diff --git a/src/pipe/graph.c b/src/pipe/graph.c index 2bd3fdce..ee9c3feb 100644 --- a/src/pipe/graph.c +++ b/src/pipe/graph.c @@ -2296,6 +2296,23 @@ VkResult dt_graph_run( // m3(out) -> m2(in) -> bypass m1(out) -> m0(in) if(graph->module[mi1].connector[mc1].bypass_mi >= 0) { // now go from mi1/mc1(out) -> m2 = bypass(in) -> m3 = conn(out) +#if 1 + int mi2 = graph->module[mi1].connector[mc1].bypass_mi; + int mc2 = graph->module[mi1].connector[mc1].bypass_mc; + if(mi2 == -1u) continue; + int mi3 = graph->module[mi2].connector[mc2].connected_mi; + int mc3 = graph->module[mi2].connector[mc2].connected_mc; + if(mi3 == -1u) continue; + // fprintf(stderr, "XXX walking %" PRItkn":%" PRItkn + // "--> %" PRItkn ":%" PRItkn + // "--> %" PRItkn ":%" PRItkn"\n", + // dt_token_str(graph->module[mi1].name), + // dt_token_str(graph->module[mi1].connector[mc1].name), + // dt_token_str(graph->module[mi2].name), + // dt_token_str(graph->module[mi2].connector[mc2].name), + // dt_token_str(graph->module[mi3].name), + // dt_token_str(graph->module[mi3].connector[mc3].name)); +#else int mi3, mc3; while(1) { @@ -2304,12 +2321,22 @@ VkResult dt_graph_run( if(mi2 == -1u) continue; mi3 = graph->module[mi2].connector[mc2].connected_mi; mc3 = graph->module[mi2].connector[mc2].connected_mc; + fprintf(stderr, "XXX walking %" PRItkn":%" PRItkn + "--> %" PRItkn ":%" PRItkn + "--> %" PRItkn ":%" PRItkn"\n", + dt_token_str(graph->module[mi1].name), + dt_token_str(graph->module[mi1].connector[mc1].name), + dt_token_str(graph->module[mi2].name), + dt_token_str(graph->module[mi2].connector[mc2].name), + dt_token_str(graph->module[mi3].name), + dt_token_str(graph->module[mi3].connector[mc3].name)); if(mi3 == -1u) continue; // now if this module is again a bypass thing, continue the dance! if(graph->module[mi3].connector[mc3].bypass_mi < 0) break; mi1 = mi3; mc1 = mc3; } +#endif n0 = graph->module[mi3].connector[mc3].associated_i; c0 = graph->module[mi3].connector[mc3].associated_c; }