summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/mesa/state_tracker/st_cb_queryobj.c4
-rw-r--r--src/mesa/state_tracker/st_extensions.c1
2 files changed, 4 insertions, 1 deletions
diff --git a/src/mesa/state_tracker/st_cb_queryobj.c b/src/mesa/state_tracker/st_cb_queryobj.c
index b1ac2aab6da..4c25724b5dc 100644
--- a/src/mesa/state_tracker/st_cb_queryobj.c
+++ b/src/mesa/state_tracker/st_cb_queryobj.c
@@ -118,7 +118,7 @@ st_BeginQuery(struct gl_context *ctx, struct gl_query_object *q)
type = PIPE_QUERY_SO_OVERFLOW_PREDICATE;
break;
case GL_TRANSFORM_FEEDBACK_OVERFLOW_ARB:
- type = PIPE_QUERY_SO_OVERFLOW_PREDICATE;
+ type = PIPE_QUERY_SO_OVERFLOW_ANY_PREDICATE;
break;
case GL_TIME_ELAPSED:
if (st->has_time_elapsed)
@@ -260,6 +260,8 @@ get_query_result(struct pipe_context *pipe,
default:
switch (stq->type) {
case PIPE_QUERY_OCCLUSION_PREDICATE:
+ case PIPE_QUERY_SO_OVERFLOW_PREDICATE:
+ case PIPE_QUERY_SO_OVERFLOW_ANY_PREDICATE:
stq->base.Result = !!data.b;
break;
default:
diff --git a/src/mesa/state_tracker/st_extensions.c b/src/mesa/state_tracker/st_extensions.c
index 74193cc4928..8f1676ef41f 100644
--- a/src/mesa/state_tracker/st_extensions.c
+++ b/src/mesa/state_tracker/st_extensions.c
@@ -626,6 +626,7 @@ void st_init_extensions(struct pipe_screen *screen,
{ o(ARB_timer_query), PIPE_CAP_QUERY_TIMESTAMP },
{ o(ARB_transform_feedback2), PIPE_CAP_STREAM_OUTPUT_PAUSE_RESUME },
{ o(ARB_transform_feedback3), PIPE_CAP_STREAM_OUTPUT_INTERLEAVE_BUFFERS },
+ { o(ARB_transform_feedback_overflow_query), PIPE_CAP_QUERY_SO_OVERFLOW },
{ o(KHR_blend_equation_advanced), PIPE_CAP_TGSI_FS_FBFETCH },