From: Tapani Pälli Date: Tue, 24 Sep 2019 11:34:40 +0000 (+0300) Subject: mesa/st: calculate texture size based on EGLImage miplevel X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=031752798b440f650c9bc758dfe8d18323a2b9e3;p=mesa.git mesa/st: calculate texture size based on EGLImage miplevel Fixes issues with 'egl-gl_oes_egl_image' Piglit test. Signed-off-by: Tapani Pälli Reviewed-by: Marek Olšák --- diff --git a/src/mesa/state_tracker/st_cb_eglimage.c b/src/mesa/state_tracker/st_cb_eglimage.c index 77abe55cfb2..c4eac0ce44a 100644 --- a/src/mesa/state_tracker/st_cb_eglimage.c +++ b/src/mesa/state_tracker/st_cb_eglimage.c @@ -271,8 +271,11 @@ st_bind_egl_image(struct gl_context *ctx, } assert(texFormat != MESA_FORMAT_NONE); - _mesa_init_teximage_fields(ctx, texImage, - stimg->texture->width0, stimg->texture->height0, + /* Minify texture size based on level set on the EGLImage. */ + uint32_t width = u_minify(stimg->texture->width0, stimg->level); + uint32_t height = u_minify(stimg->texture->height0, stimg->level); + + _mesa_init_teximage_fields(ctx, texImage, width, height, 1, 0, internalFormat, texFormat); pipe_resource_reference(&stObj->pt, stimg->texture);