[Mesa-dev] [PATCH 22/37] mesa: Update comments/assertions about buffer mapping for glGetTexImage().

Eric Anholt eric at anholt.net
Mon Aug 15 11:53:52 PDT 2011


From: Brian Paul <brianp at vmware.com>

This code is about to stop needing ->Data and using MapTextureImage().
---
 src/mesa/main/texgetimage.c |    7 +++----
 1 files changed, 3 insertions(+), 4 deletions(-)

diff --git a/src/mesa/main/texgetimage.c b/src/mesa/main/texgetimage.c
index 4c8a412..da07800 100644
--- a/src/mesa/main/texgetimage.c
+++ b/src/mesa/main/texgetimage.c
@@ -409,7 +409,8 @@ get_tex_memcpy(struct gl_context *ctx, GLenum format, GLenum type, GLvoid *pixel
 /**
  * This is the software fallback for Driver.GetTexImage().
  * All error checking will have been done before this routine is called.
- * The texture image must be mapped.
+ * We'll call ctx->Driver.MapTextureImage() to access the data, then
+ * unmap with ctx->Driver.UnmapTextureImage().
  */
 void
 _mesa_get_teximage(struct gl_context *ctx, GLenum target, GLint level,
@@ -419,9 +420,6 @@ _mesa_get_teximage(struct gl_context *ctx, GLenum target, GLint level,
 {
    GLuint dimensions;
 
-   /* If we get here, the texture image should be mapped */
-   assert(texImage->Data);
-
    switch (target) {
    case GL_TEXTURE_1D:
       dimensions = 1;
@@ -433,6 +431,7 @@ _mesa_get_teximage(struct gl_context *ctx, GLenum target, GLint level,
       dimensions = 2;
    }
 
+   /* map dest buffer, if PBO */
    if (_mesa_is_bufferobj(ctx->Pack.BufferObj)) {
       /* Packing texture image into a PBO.
        * Map the (potentially) VRAM-based buffer into our process space so
-- 
1.7.5.4



More information about the mesa-dev mailing list