diff options
author | Chris Forbes <[email protected]> | 2013-03-29 16:22:09 +1300 |
---|---|---|
committer | Chris Forbes <[email protected]> | 2013-03-29 20:54:36 +1300 |
commit | 4412f3bc13886751f91f265babd78bac28c7ba41 (patch) | |
tree | 2b3c75d0ad7dec69b40d8313b2a4c89e0eaad1e0 /src/mesa/main | |
parent | ee624ced364bfd2f896809874ef3a808a11c5ecf (diff) |
mesa: provide default implementation of QuerySamplesForFormat
Previously at least i915 failed to provide an implementation, but
exposed ARB_internalformat_query anyway, leading to crashes when
QueryInternalformativ was called.
Default implementation just returns 1 for everything, so is suitable for
any driver which does not support multisampling.
V2: - Move from intel to core mesa.
Signed-off-by: Chris Forbes <[email protected]>
Reviewed-by: Kenneth Graunke <[email protected]>
Diffstat (limited to 'src/mesa/main')
-rw-r--r-- | src/mesa/main/formatquery.c | 15 | ||||
-rw-r--r-- | src/mesa/main/formatquery.h | 4 |
2 files changed, 19 insertions, 0 deletions
diff --git a/src/mesa/main/formatquery.c b/src/mesa/main/formatquery.c index 78c5fbe5e2b..e45dc868060 100644 --- a/src/mesa/main/formatquery.c +++ b/src/mesa/main/formatquery.c @@ -30,6 +30,21 @@ #include "fbobject.h" #include "formatquery.h" +/* default implementation of QuerySamplesForFormat driverfunc, for + * non-multisample-capable drivers. */ +size_t +_mesa_query_samples_for_format(struct gl_context *ctx, GLenum target, + GLenum internalFormat, int samples[16]) +{ + (void) target; + (void) internalFormat; + (void) ctx; + + samples[0] = 1; + return 1; +} + + void GLAPIENTRY _mesa_GetInternalformativ(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint *params) diff --git a/src/mesa/main/formatquery.h b/src/mesa/main/formatquery.h index 585c3eb64ba..603400059e5 100644 --- a/src/mesa/main/formatquery.h +++ b/src/mesa/main/formatquery.h @@ -28,6 +28,10 @@ #include "compiler.h" #include "glheader.h" +size_t +_mesa_query_samples_for_format(struct gl_context *ctx, GLenum target, + GLenum internalFormat, int samples[16]); + extern void GLAPIENTRY _mesa_GetInternalformativ(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint *params); |