From the ARB_internalformat_query2 specification:
"- SRGB_DECODE_ARB: The support for toggling whether sRGB decode happens at
sampling time (see EXT/ARB_texture_sRGB_decode) for the resource is
returned in <params>.
Possible values returned are FULL_SUPPORT, CAVEAT_SUPPORT, or NONE.
If the resource or operation is not supported, NONE is returned."
Reviewed-by: Dave Airlie <airlied@redhat.com>
case GL_AUTO_GENERATE_MIPMAP:
case GL_SRGB_READ:
case GL_SRGB_WRITE:
+ case GL_SRGB_DECODE_ARB:
params[0] = GL_FULL_SUPPORT;
break;
break;
case GL_SRGB_DECODE_ARB:
- /* @TODO */
+ /* Presence of EXT_texture_sRGB_decode was already verified */
+ if (!_mesa_has_EXT_texture_sRGB(ctx) ||
+ target == GL_RENDERBUFFER ||
+ !_mesa_is_srgb_format(internalformat)) {
+ goto end;
+ }
+
+ ctx->Driver.QueryInternalFormat(ctx, target, internalformat, pname,
+ buffer);
break;
case GL_FILTER: