aboutsummaryrefslogtreecommitdiffstats
path: root/src/mesa/state_tracker/st_format.c
diff options
context:
space:
mode:
authorNicolai Hähnle <[email protected]>2017-10-10 13:58:46 +0200
committerNicolai Hähnle <[email protected]>2017-10-10 13:58:46 +0200
commit9a8f13a33b2d08b34c78de67ce90e0198bfdf0b3 (patch)
treeef3d3ba5bf544994a8679cac381d8279182160fd /src/mesa/state_tracker/st_format.c
parent1b592d30c51696eeeadca7a55b603c543dfdc3cf (diff)
st/mesa: don't clobber glGetInternalformat* buffer for GL_NUM_SAMPLE_COUNTS
Applications might pass in a buffer that is sized too large and rely on the extra space of the buffer not being overwritten. Fixes dEQP-GLES31.functional.state_query.internal_format.partial_query.num_sample_counts Cc: [email protected] Reviewed-by: Marek Olšák <[email protected]>
Diffstat (limited to 'src/mesa/state_tracker/st_format.c')
-rw-r--r--src/mesa/state_tracker/st_format.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/mesa/state_tracker/st_format.c b/src/mesa/state_tracker/st_format.c
index 5e38fe56890..65be09cbde2 100644
--- a/src/mesa/state_tracker/st_format.c
+++ b/src/mesa/state_tracker/st_format.c
@@ -2378,9 +2378,10 @@ st_QueryInternalFormat(struct gl_context *ctx, GLenum target,
break;
case GL_NUM_SAMPLE_COUNTS: {
+ int samples[16];
size_t num_samples;
num_samples = st_QuerySamplesForFormat(ctx, target, internalFormat,
- params);
+ samples);
params[0] = (GLint) num_samples;
break;
}