aboutsummaryrefslogtreecommitdiffstats
path: root/src/mesa/state_tracker/st_cb_clear.c
diff options
context:
space:
mode:
authorMarek Olšák <[email protected]>2011-11-04 18:10:16 +0100
committerMarek Olšák <[email protected]>2011-11-04 23:01:47 +0100
commitd2633af696f2e4ff98f669061e4e222e8643312c (patch)
treee7c4b33370aeba5f6133fb89e7c0716350f30635 /src/mesa/state_tracker/st_cb_clear.c
parent794c5158b0a0b2978ebae6fdc2747e6febcd42c1 (diff)
st/mesa: set geometry shader to NULL when doing internal drawing
The code expects the geometry shader to be NULL. We don't have geometry shaders now, but it's good to be prepared. v2: check for support in the cso context
Diffstat (limited to 'src/mesa/state_tracker/st_cb_clear.c')
-rw-r--r--src/mesa/state_tracker/st_cb_clear.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/mesa/state_tracker/st_cb_clear.c b/src/mesa/state_tracker/st_cb_clear.c
index 83802a5ea67..19a87aae29c 100644
--- a/src/mesa/state_tracker/st_cb_clear.c
+++ b/src/mesa/state_tracker/st_cb_clear.c
@@ -246,6 +246,7 @@ clear_with_quad(struct gl_context *ctx,
cso_save_clip(st->cso_context);
cso_save_fragment_shader(st->cso_context);
cso_save_vertex_shader(st->cso_context);
+ cso_save_geometry_shader(st->cso_context);
cso_save_vertex_elements(st->cso_context);
cso_save_vertex_buffers(st->cso_context);
@@ -321,6 +322,7 @@ clear_with_quad(struct gl_context *ctx,
cso_set_clip(st->cso_context, &st->clear.clip);
set_fragment_shader(st);
set_vertex_shader(st);
+ cso_set_geometry_shader_handle(st->cso_context, NULL);
if (ctx->DrawBuffer->_ColorDrawBuffers[0]) {
st_translate_color(ctx->Color.ClearColor.f,
@@ -340,6 +342,7 @@ clear_with_quad(struct gl_context *ctx,
cso_restore_clip(st->cso_context);
cso_restore_fragment_shader(st->cso_context);
cso_restore_vertex_shader(st->cso_context);
+ cso_restore_geometry_shader(st->cso_context);
cso_restore_vertex_elements(st->cso_context);
cso_restore_vertex_buffers(st->cso_context);
}