Chris Forbes <chr...@ijw.co.nz> writes: > V2: Check for mapping failure (thanks Brian) > > Signed-off-by: Chris Forbes <chr...@ijw.co.nz> > --- > src/mesa/vbo/vbo_primitive_restart.c | 33 +++++++++++++++++++++++++++++++++ > 1 file changed, 33 insertions(+) > > diff --git a/src/mesa/vbo/vbo_primitive_restart.c > b/src/mesa/vbo/vbo_primitive_restart.c > index 48d04e1..ee84f10 100644 > --- a/src/mesa/vbo/vbo_primitive_restart.c > +++ b/src/mesa/vbo/vbo_primitive_restart.c > @@ -180,6 +180,39 @@ vbo_sw_primitive_restart(struct gl_context *ctx, > GLboolean map_ib = ib->obj->Name && !ib->obj->Pointer; > void *ptr; > > + /* If there is an indirect buffer, map it and extract the draw params */ > + if (indirect && prims[0].is_indirect) { > + struct _mesa_prim new_prim = *prims; > + struct _mesa_index_buffer new_ib = *ib; > + const uint32_t *indirect_params; > + if (!ctx->Driver.MapBufferRange(ctx, 0, indirect->Size, > GL_MAP_READ_BIT, > + (struct gl_buffer_object *)indirect)) {
Are you just casting away the const here? indirect should definitely not be const, because you're modifying it in calls like this.
pgp6eATrP4Ip3.pgp
Description: PGP signature
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev