diff options
Diffstat (limited to 'src/mesa/tnl/t_save_api.c')
-rw-r--r-- | src/mesa/tnl/t_save_api.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/mesa/tnl/t_save_api.c b/src/mesa/tnl/t_save_api.c index e95c1c98eb0..08a5036c6d1 100644 --- a/src/mesa/tnl/t_save_api.c +++ b/src/mesa/tnl/t_save_api.c @@ -475,7 +475,7 @@ static void _save_upgrade_vertex( GLcontext *ctx, */ if (tnl->save.currentsz[attr] == 0) { assert(oldsz == 0); - tnl->save.dangling_attr_ref = attr; + tnl->save.dangling_attr_ref = GL_TRUE; _mesa_debug(0, "_save_upgrade_vertex: dangling reference attr %d\n", attr); @@ -680,11 +680,12 @@ static void _save_reset_vertex( GLcontext *ctx ) save_init_13( tnl ); save_init_14( tnl ); save_init_15( tnl ); - + for (i = 0 ; i < _TNL_ATTRIB_MAX ; i++) tnl->save.attrsz[i] = 0; - + tnl->save.vertex_size = 0; + tnl->save.have_materials = 0; _save_reset_counters( ctx ); } @@ -989,6 +990,7 @@ static void GLAPIENTRY _save_VertexAttrib4fvNV( GLuint index, const GLfloat *v ) do { \ if (tnl->save.attrsz[A] < N) { \ _save_upgrade_vertex( ctx, A, N ); \ + tnl->save.have_materials = GL_TRUE; \ } \ \ { \ |