mesa: add more comments about textarget in framebuffer_texture()

This commit is contained in:
Brian Paul
2012-03-12 11:03:59 -06:00
parent 92c42d8170
commit 534cbbe658

View File

@@ -1914,7 +1914,10 @@ reuse_framebuffer_texture_attachment(struct gl_framebuffer *fb,
/**
* Common code called by glFramebufferTexture1D/2D/3DEXT().
* Common code called by glFramebufferTexture1D/2D/3DEXT() and
* glFramebufferTextureLayerEXT().
* Note: glFramebufferTextureLayerEXT() has no textarget parameter so we'll
* get textarget=0 in that case.
*/
static void
framebuffer_texture(struct gl_context *ctx, const char *caller, GLenum target,
@@ -1950,12 +1953,17 @@ framebuffer_texture(struct gl_context *ctx, const char *caller, GLenum target,
texObj = _mesa_lookup_texture(ctx, texture);
if (texObj != NULL) {
if (textarget == 0) {
/* XXX what's the purpose of this? */
/* If textarget == 0 it means we're being called by
* glFramebufferTextureLayer() and textarget is not used.
* The only legal texture types for that function are 3D and
* 1D/2D arrays textures.
*/
err = (texObj->Target != GL_TEXTURE_3D) &&
(texObj->Target != GL_TEXTURE_1D_ARRAY_EXT) &&
(texObj->Target != GL_TEXTURE_2D_ARRAY_EXT);
}
else {
/* Make sure textarget is consistent with the texture's type */
err = (texObj->Target == GL_TEXTURE_CUBE_MAP)
? !_mesa_is_cube_face(textarget)
: (texObj->Target != textarget);