summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLaura Ekstrand <laura@jlekstrand.net>2015-03-24 17:31:21 -0700
committerLaura Ekstrand <laura@jlekstrand.net>2015-03-24 17:31:21 -0700
commit05dfe8d6b1938aeca57b4e9ebe2c9cd8ecd39ba9 (patch)
tree13d388e99852ae44dbbb1be3782e085dceb7314c
parent2a45aea2eca29c02a4f5f7f5f2794d99637fc4fa (diff)
meta: clear_state now uses VAO & VBO pointers.adsa-meta
-rw-r--r--src/mesa/drivers/common/meta.c21
-rw-r--r--src/mesa/drivers/common/meta.h4
2 files changed, 15 insertions, 10 deletions
diff --git a/src/mesa/drivers/common/meta.c b/src/mesa/drivers/common/meta.c
index dbbe6221e3..50d8eeb6c9 100644
--- a/src/mesa/drivers/common/meta.c
+++ b/src/mesa/drivers/common/meta.c
@@ -1549,7 +1549,8 @@ meta_glsl_clear_init(struct gl_context *ctx, struct clear_state *clear)
GLuint vs, fs;
bool has_integer_textures;
- _mesa_meta_setup_vertex_objects(&clear->VAO, &clear->VBO, true, 3, 0, 0);
+ _mesa_meta_setup_vertex_objects(&clear->VAO->Name, &clear->VBO->Name,
+ true, 3, 0, 0);
if (clear->ShaderProg != 0)
return;
@@ -1632,12 +1633,15 @@ meta_glsl_clear_init(struct gl_context *ctx, struct clear_state *clear)
static void
meta_glsl_clear_cleanup(struct clear_state *clear)
{
- if (clear->VAO == 0)
- return;
- _mesa_DeleteVertexArrays(1, &clear->VAO);
- clear->VAO = 0;
- _mesa_DeleteBuffers(1, &clear->VBO);
- clear->VBO = 0;
+ if (clear->VAO) {
+ _mesa_DeleteVertexArrays(1, &clear->VAO->Name);
+ clear->VAO = NULL;
+ }
+
+ if (clear->VBO) {
+ _mesa_DeleteBuffers(1, &clear->VBO->Name);
+ clear->VBO = NULL;
+ }
_mesa_DeleteProgram(clear->ShaderProg);
clear->ShaderProg = 0;
@@ -1745,7 +1749,8 @@ meta_clear(struct gl_context *ctx, GLbitfield buffers, bool glsl)
y1 = ((float) fb->_Ymax / fb->Height) * 2.0f - 1.0f;
z = -invert_z(ctx->Depth.Clear);
} else {
- _mesa_meta_setup_vertex_objects(&clear->VAO, &clear->VBO, false, 3, 0, 4);
+ _mesa_meta_setup_vertex_objects(&clear->VAO->Name, &clear->VBO->Name,
+ false, 3, 0, 4);
x0 = (float) fb->_Xmin;
y0 = (float) fb->_Ymin;
diff --git a/src/mesa/drivers/common/meta.h b/src/mesa/drivers/common/meta.h
index ec55a74a72..3b00b91ad8 100644
--- a/src/mesa/drivers/common/meta.h
+++ b/src/mesa/drivers/common/meta.h
@@ -321,8 +321,8 @@ struct fb_tex_blit_state
*/
struct clear_state
{
- GLuint VAO;
- GLuint VBO;
+ struct gl_vertex_array_object *VAO;
+ struct gl_buffer_object *VBO;
GLuint ShaderProg;
GLint ColorLocation;
GLint LayerLocation;