OSDN Git Service

mesa: set the new array->Format field in VBO code
authorBrian Paul <brianp@vmware.com>
Fri, 23 Jan 2009 23:40:27 +0000 (16:40 -0700)
committerBrian Paul <brianp@vmware.com>
Fri, 23 Jan 2009 23:41:15 +0000 (16:41 -0700)
Should help to solve failed assertion in i965 driver (see bug 19708)

src/mesa/vbo/vbo_context.c
src/mesa/vbo/vbo_exec_draw.c
src/mesa/vbo/vbo_save_draw.c
src/mesa/vbo/vbo_split_copy.c

index a73a46b..274d232 100644 (file)
@@ -76,6 +76,7 @@ static void init_legacy_currval(GLcontext *ctx)
       cl->StrideB = 0;
       cl->Enabled = 1;
       cl->Type = GL_FLOAT;
+      cl->Format = GL_RGBA;
       cl->Ptr = (const void *)ctx->Current.Attrib[i];
       cl->BufferObj = ctx->Array.NullBufferObj;
    }
@@ -97,6 +98,7 @@ static void init_generic_currval(GLcontext *ctx)
        */
       cl->Size = 1;
       cl->Type = GL_FLOAT;
+      cl->Format = GL_RGBA;
       cl->Ptr = (const void *)ctx->Current.Attrib[VERT_ATTRIB_GENERIC0 + i];
       cl->Stride = 0;
       cl->StrideB = 0;
@@ -141,6 +143,7 @@ static void init_mat_currval(GLcontext *ctx)
 
       cl->Ptr = (const void *)ctx->Light.Material.Attrib[i];
       cl->Type = GL_FLOAT;
+      cl->Format = GL_RGBA;
       cl->Stride = 0;
       cl->StrideB = 0;
       cl->Enabled = 1;
index 92356ba..5b2e355 100644 (file)
@@ -204,6 +204,7 @@ static void vbo_exec_bind_arrays( GLcontext *ctx )
         arrays[attr].StrideB = exec->vtx.vertex_size * sizeof(GLfloat);
         arrays[attr].Stride = exec->vtx.vertex_size * sizeof(GLfloat);
         arrays[attr].Type = GL_FLOAT;
+         arrays[attr].Format = GL_RGBA;
         arrays[attr].Enabled = 1;
          _mesa_reference_buffer_object(ctx,
                                        &arrays[attr].BufferObj,
index ed82f09..6fa3f1a 100644 (file)
@@ -150,6 +150,7 @@ static void vbo_bind_vertex_list( GLcontext *ctx,
         arrays[attr].StrideB = node->vertex_size * sizeof(GLfloat);
         arrays[attr].Stride = node->vertex_size * sizeof(GLfloat);
         arrays[attr].Type = GL_FLOAT;
+         arrays[attr].Format = GL_RGBA;
         arrays[attr].Enabled = 1;
          _mesa_reference_buffer_object(ctx,
                                        &arrays[attr].BufferObj,
index 685cc0f..5fb66d3 100644 (file)
@@ -461,6 +461,7 @@ static void replay_init( struct copy_context *copy )
 
       dst->Size = src->Size;
       dst->Type = src->Type;
+      dst->Format = GL_RGBA;
       dst->Stride = copy->vertex_size;
       dst->StrideB = copy->vertex_size;
       dst->Ptr = copy->dstbuf + offset;