Skip to content
  • Eduardo Lima Mitev's avatar
    mesa/getteximage: Add validation of target to glGetTextureImage · 116fed80
    Eduardo Lima Mitev authored
    
    
    There is an specific list of texture targets that can be used with
    glGetTextureImage. From OpenGL 4.5 spec, section '8.11 Texture Queries',
    page 234 of the PDF:
    
       "An INVALID_ENUM error is generated if the effective target is
        not one of TEXTURE_1D , TEXTURE_2D , TEXTURE_3D , TEXTURE_1D_-
        ARRAY , TEXTURE_2D_ARRAY , TEXTURE_CUBE_MAP_ARRAY , TEXTURE_-
        RECTANGLE , one of the targets from table 8.19 (for GetTexImage
        and GetnTexImage only), or TEXTURE_CUBE_MAP (for GetTextureImage
        only)."
    
    We are currently not validating the target for glGetTextureImage. As
    an example, calling this function on a texture with target
    GL_TEXTURE_2D_MULTISAMPLE should return INVALID_ENUM, but instead it
    hits an assertion down the road in the i965 driver.
    
    Reviewed-by: default avatarNicolai Hähnle <nicolai.haehnle@amd.com>
    116fed80