[Mesa-dev] [PATCH 13/15 v2] mesa: Use the profile instead of an extension bit to validate GL_TEXTURE_CUBE_MAP

Fredrik Höglund fredrik at kde.org
Wed May 27 08:05:53 PDT 2015


On Thursday 21 May 2015, Ian Romanick wrote:
> From: Ian Romanick <ian.d.romanick at intel.com>
> 
> The extension on which this depends will always be enabled in core
> profile, and the extension bit is about to be removed.
> 
> Signed-off-by: Ian Romanick <ian.d.romanick at intel.com>
> Cc: "10.6" <mesa-stable at lists.freedesktop.org>
> Cc: Fredrik Höglund <fredrik at kde.org>
> ---
>  src/mesa/main/fbobject.c | 13 ++++++++++---
>  1 file changed, 10 insertions(+), 3 deletions(-)
> 
> diff --git a/src/mesa/main/fbobject.c b/src/mesa/main/fbobject.c
> index 5b8c52a..c5a7026 100644
> --- a/src/mesa/main/fbobject.c
> +++ b/src/mesa/main/fbobject.c
> @@ -2707,6 +2707,10 @@ check_texture_target(struct gl_context *ctx, GLenum target,
>     /* We're being called by glFramebufferTextureLayer().
>      * The only legal texture types for that function are 3D,
>      * cube-map, and 1D/2D/cube-map array textures.
> +    *
> +    * We don't need to check for GL_ARB_texture_cube_map_array because the
> +    * application wouldn't have been able to create a texture with a
> +    * GL_TEXTURE_CUBE_MAP_ARRAY target if the extension were not enabled.
>      */
>     switch (target) {
>     case GL_TEXTURE_3D:
> @@ -2716,10 +2720,13 @@ check_texture_target(struct gl_context *ctx, GLenum target,
>     case GL_TEXTURE_2D_MULTISAMPLE_ARRAY:
>        return true;
>     case GL_TEXTURE_CUBE_MAP:
> -      /* This target is valid in TextureLayer when ARB_direct_state_access
> -       * or OpenGL 4.5 is supported.
> +      /* We don't need to check the extension (GL_ARB_direct_state_access) or
> +       * GL version (4.5) for GL_TEXTURE_CUBE_MAP because DSA is always
> +       * enabled in core profile.  This can be called from
> +       * _mesa_FramebufferTextureLayer in compatibility profile (OpenGL 3.0),
> +       * so we do have to check the profile.
>         */
> -      return ctx->Extensions.ARB_direct_state_access;
> +      return ctx->API == API_OPENGL_CORE;
>     }
>  
>     _mesa_error(ctx, GL_INVALID_OPERATION,
> 

This patch, and patches 14 and 15 are:

Reviewed-by: Fredrik Höglund <fredrik at kde.org>

Patches 1-12 are:

Acked-by: Fredrik Höglund <fredrik at kde.org>

Fredrik



More information about the mesa-dev mailing list