intel: fix clears with mipLevels > 1

meta->dst.layer should be reset to range->baseArraySlice for each mip level.
Otherwise, we may render out-of-bound and cause screen corruptions.
diff --git a/icd/intel/cmd_meta.c b/icd/intel/cmd_meta.c
index 5d3114d..53215fe 100644
--- a/icd/intel/cmd_meta.c
+++ b/icd/intel/cmd_meta.c
@@ -700,10 +700,10 @@
     if (array_size > range->arraySize)
         array_size = range->arraySize;
 
-    meta->dst.lod = range->baseMipLevel;
-    meta->dst.layer = range->baseArraySlice;
-
     for (i = 0; i < mip_levels; i++) {
+        meta->dst.lod = range->baseMipLevel + i;
+        meta->dst.layer = range->baseArraySlice;
+
         meta->width = u_minify(img->layout.width0, meta->dst.lod);
         meta->height = u_minify(img->layout.height0, meta->dst.lod);
 
@@ -727,8 +727,6 @@
 
             meta->dst.layer++;
         }
-
-        meta->dst.lod++;
     }
 }