mesa/st: add ARB_texture_view support
[mesa.git] / src / mesa / state_tracker / st_cb_fbo.c
index 7cfd3dadefaca8c24b328725dd30aa0ce3945d9d..470ab278b4b39cfa2d61e077c3896238dce36cce 100644 (file)
@@ -450,6 +450,16 @@ st_update_renderbuffer_surface(struct st_context *st,
       last_layer = strb->rtt_face + strb->rtt_slice;
    }
 
+   /* Adjust for texture views */
+   if (strb->is_rtt) {
+      struct gl_texture_object *tex = strb->Base.TexImage->TexObject;
+      first_layer += tex->MinLayer;
+      if (!strb->rtt_layered)
+         last_layer += tex->MinLayer;
+      else
+         last_layer = MIN2(first_layer + tex->NumLayers - 1, last_layer);
+   }
+
    if (!strb->surface ||
        strb->surface->texture->nr_samples != strb->Base.NumSamples ||
        strb->surface->format != format ||