Module: Mesa
Branch: master
Commit: c2e37b1d2e1b8014475c7d2698fba317c9082d70
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=c2e37b1d2e1b8014475c7d2698fba317c9082d70

Author: Michel Dänzer <[email protected]>
Date:   Fri Oct 19 11:59:35 2012 +0200

st/mesa: Fix source miptree level for copying data to finalized miptree.

Fixes WebGL texture mips conformance test, no piglit regressions.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=44912

NOTE: This is a candidate for the stable branches.

Signed-off-by: Michel Dänzer <[email protected]>
Reviewed-by: Brian Paul <[email protected]>
Tested-by: Andreas Boll <[email protected]>

---

 src/mesa/state_tracker/st_cb_texture.c |    6 +++++-
 1 files changed, 5 insertions(+), 1 deletions(-)

diff --git a/src/mesa/state_tracker/st_cb_texture.c 
b/src/mesa/state_tracker/st_cb_texture.c
index 218c8d1..b19dc67 100644
--- a/src/mesa/state_tracker/st_cb_texture.c
+++ b/src/mesa/state_tracker/st_cb_texture.c
@@ -1113,11 +1113,15 @@ copy_image_data_to_texture(struct st_context *st,
       /* Copy potentially with the blitter:
        */
       GLuint src_level;
-      if (stImage->pt != stObj->pt)
+      if (stImage->pt->last_level == 0)
          src_level = 0;
       else
          src_level = stImage->base.Level;
 
+      assert(src_level <= stImage->pt->last_level);
+      assert(u_minify(stImage->pt->width0, src_level) == stImage->base.Width);
+      assert(u_minify(stImage->pt->height0, src_level) == 
stImage->base.Height);
+
       st_texture_image_copy(st->pipe,
                             stObj->pt, dstLevel,  /* dest texture, level */
                             stImage->pt, src_level, /* src texture, level */

_______________________________________________
mesa-commit mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/mesa-commit

Reply via email to