Would it be wise to just initialize everything explicitly? For example this is what _mesa_draw_arrays does:
memset(&prim, 0, sizeof(prim)); prim.begin = 1; prim.end = 1; prim.mode = mode; prim.num_instances = numInstances; prim.base_instance = baseInstance; prim.draw_id = drawID; prim.is_indirect = 0; prim.start = start; prim.count = count; and vbo_exec_Begin has: exec->vtx.prim[i].mode = mode; exec->vtx.prim[i].begin = 1; exec->vtx.prim[i].end = 0; exec->vtx.prim[i].indexed = 0; exec->vtx.prim[i].pad = 0; exec->vtx.prim[i].start = exec->vtx.vert_count; exec->vtx.prim[i].count = 0; exec->vtx.prim[i].num_instances = 1; exec->vtx.prim[i].base_instance = 0; exec->vtx.prim[i].is_indirect = 0; I do think that your change is all that's strictly needed though. Sorry about the breakage! On Tue, Jan 29, 2019 at 1:31 PM Neha Bhende <[email protected]> wrote: > > This patch fixes regression caused by > bac8534267- st/mesa: allow glDrawElements to work with GL_SELECT feedback > We also need to set instance count while creating new rastpos stage. > > Reviewed-by: Brian Paul <[email protected]> > --- > src/mesa/state_tracker/st_cb_rasterpos.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/src/mesa/state_tracker/st_cb_rasterpos.c > b/src/mesa/state_tracker/st_cb_rasterpos.c > index fecaaf7..cca2fba 100644 > --- a/src/mesa/state_tracker/st_cb_rasterpos.c > +++ b/src/mesa/state_tracker/st_cb_rasterpos.c > @@ -206,6 +206,7 @@ new_draw_rastpos_stage(struct gl_context *ctx, struct > draw_context *draw) > rs->prim.indexed = 0; > rs->prim.begin = 1; > rs->prim.end = 1; > + rs->prim.num_instances = 1; > rs->prim.start = 0; > rs->prim.count = 1; > > -- > 2.7.4 > > _______________________________________________ > mesa-dev mailing list > [email protected] > https://lists.freedesktop.org/mailman/listinfo/mesa-dev _______________________________________________ mesa-dev mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-dev
