Reviewed-by: Marek Olšák <[email protected]> On Feb 1, 2017 10:11 PM, "Ilia Mirkin" <[email protected]> wrote:
> The VBO module keeps track of any vbo buffers. It updates this list when > receiving an InvalidateState call, however this never happens when > recording draws right now. Make sure that we do all the usual state > updates when recording draws so that the VBO list may be kept up to > date. > > Signed-off-by: Ilia Mirkin <[email protected]> > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=99631 > --- > src/mesa/vbo/vbo_save_api.c | 7 +++++++ > 1 file changed, 7 insertions(+) > > diff --git a/src/mesa/vbo/vbo_save_api.c b/src/mesa/vbo/vbo_save_api.c > index f648ccc..f8dab0c 100644 > --- a/src/mesa/vbo/vbo_save_api.c > +++ b/src/mesa/vbo/vbo_save_api.c > @@ -78,6 +78,7 @@ USE OR OTHER DEALINGS IN THE SOFTWARE. > #include "main/api_arrayelt.h" > #include "main/vtxfmt.h" > #include "main/dispatch.h" > +#include "main/state.h" > #include "util/bitscan.h" > > #include "vbo_context.h" > @@ -1159,6 +1160,9 @@ _save_OBE_DrawArrays(GLenum mode, GLint start, > GLsizei count) > if (save->out_of_memory) > return; > > + /* Make sure to process any VBO binding changes */ > + _mesa_update_state(ctx); > + > _ae_map_vbos(ctx); > > vbo_save_NotifyBegin(ctx, (mode | VBO_SAVE_PRIM_WEAK > @@ -1202,6 +1206,9 @@ _save_OBE_DrawElementsBaseVertex(GLenum mode, > GLsizei count, GLenum type, > if (save->out_of_memory) > return; > > + /* Make sure to process any VBO binding changes */ > + _mesa_update_state(ctx); > + > _ae_map_vbos(ctx); > > if (_mesa_is_bufferobj(indexbuf)) > -- > 2.10.2 > > _______________________________________________ > 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
