Signed-off-by: Topi Pohjolainen <topi.pohjolai...@intel.com>
---
 src/mesa/drivers/dri/i965/intel_blit.c | 20 ++++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)

diff --git a/src/mesa/drivers/dri/i965/intel_blit.c 
b/src/mesa/drivers/dri/i965/intel_blit.c
index 4ffff76cc5..68e9c1ad16 100644
--- a/src/mesa/drivers/dri/i965/intel_blit.c
+++ b/src/mesa/drivers/dri/i965/intel_blit.c
@@ -406,10 +406,22 @@ intel_miptree_copy(struct brw_context *brw,
        */
       assert(src_x % bw == 0);
       assert(src_y % bh == 0);
-      assert(src_width % bw == 0 ||
-             src_x + src_width == minify(src_mt->logical_width0, src_level));
-      assert(src_height % bh == 0 ||
-             src_y + src_height == minify(src_mt->logical_height0, src_level));
+
+      if (src_mt->surf.size > 0) {
+         assert(src_width % bw == 0 ||
+                src_x + src_width ==
+                minify(src_mt->surf.logical_level0_px.width, src_level));
+         assert(src_height % bh == 0 ||
+                src_y + src_height ==
+                minify(src_mt->surf.logical_level0_px.height, src_level));
+      } else {
+         assert(src_width % bw == 0 ||
+                src_x + src_width ==
+                minify(src_mt->logical_width0, src_level));
+         assert(src_height % bh == 0 ||
+                src_y + src_height ==
+                minify(src_mt->logical_height0, src_level));
+      }
 
       src_x /= (int)bw;
       src_y /= (int)bh;
-- 
2.11.0

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to