----- Original Message ----- > > I see the crashes you're referring to. > > > > I don't quite understand why though: concerning the geometry shader, other > > than cosmetic changes, in theory I should just have replaced a > > null/non-null > > `tokens` pointer with a boolean `no_tokens`, though obviously I missed > > something. > > Yea, you missed the entire draw pipeline because you replaced: > if (templ->tokens) { > ... > state->draw_data = draw_create_geometry_shader(llvmpipe->draw, templ); > } > > with unconditional: > state->dgs = draw_create_geometry_shader(llvmpipe->draw, templ); > > i.e. draw gs is /always/ created whether tokens are there or not. So the > draw_bind_geometry_shader will always bind gs's with null tokens. And that's > what draw can't handle. I think that replacing that with: > if (!state->no_tokens) { > state->dgs = draw_create_geometry_shader(...); > ... > } > > should work.
Ah, yes. That was indeed unintentional. Thanks Zack, and sorry for not noticing the regression earlier. Jose > > > I should also had broken this in two separate changes: vs portion, and gs > > portion. > > vs's are fine because they're never created with null tokens. > > z > _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev