i965: Set miptree target field when creating from a BO.
authorKenneth Graunke <kenneth@whitecape.org>
Fri, 2 May 2014 06:33:53 +0000 (23:33 -0700)
committerKenneth Graunke <kenneth@whitecape.org>
Sat, 3 May 2014 06:05:37 +0000 (23:05 -0700)
Prior to commit 8435b60a3577d2d905eae189cd7e770500177e99, the region
equivalent of this function called intel_miptree_create_layout, which
set mt->target to target.  With that commit, it no longer copied target.

Piglit's ext_image_dma_buf_import-sample_[xa]rgb8888 tests would then
hit an assertion failure, where image->TexObject->Target was
GL_TEXTURE_EXTERNAL_OES, and mt->target was GL_TEXTURE_2D.

Copying the target fixes this assertion failure.

Cc: "10.2" <mesa-stable@lists.freedesktop.org>
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
src/mesa/drivers/dri/i965/intel_tex_image.c

index fbb799bc62a27585f09d3134c60b7bcfe08aa6d6..4eb024f6ce43ef5f6e136661961b6a2b0766ecf9 100644 (file)
@@ -234,6 +234,7 @@ intel_set_texture_image_bo(struct gl_context *ctx,
                                                  0, width, height, pitch);
    if (intel_image->mt == NULL)
        return;
+   intel_image->mt->target = target;
    intel_image->mt->total_width = width;
    intel_image->mt->total_height = height;
    intel_image->mt->level[0].slice[0].x_offset = tile_x;