From: Eric Anholt Date: Tue, 27 Mar 2018 22:39:49 +0000 (-0700) Subject: st: Don't try to finalize the texture in st_render_texture(). X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=0349c79bdc2c04b3d64d144159f3268ad74e2b7c;p=mesa.git st: Don't try to finalize the texture in st_render_texture(). We can't necessarily finalize the texture at this point if we're rendering to a texture image whose format is different from the baselevel's format. This was introduced as a fix for fbo-incomplete-texture-03 in de414f491526610bb260c73805c81ba413388e20, but the later fix for vmware on that testcase in 95d5c48f68b598cfa6db25f44aac52b3e11403cc made it unnecessary. Fixes assertion failures in util_resource_copy_region() in KHR-GLES3.copy_tex_image_conversions.forbidden.* when trying to finalize an R8 texture image to the RG8 texture object's pt. Reviewed-by: Brian Paul --- diff --git a/src/mesa/state_tracker/st_cb_fbo.c b/src/mesa/state_tracker/st_cb_fbo.c index 02ae8e1380e..f859133e399 100644 --- a/src/mesa/state_tracker/st_cb_fbo.c +++ b/src/mesa/state_tracker/st_cb_fbo.c @@ -509,14 +509,10 @@ st_render_texture(struct gl_context *ctx, struct gl_renderbuffer_attachment *att) { struct st_context *st = st_context(ctx); - struct pipe_context *pipe = st->pipe; struct gl_renderbuffer *rb = att->Renderbuffer; struct st_renderbuffer *strb = st_renderbuffer(rb); struct pipe_resource *pt; - if (!st_finalize_texture(ctx, pipe, att->Texture, att->CubeMapFace)) - return; - pt = get_teximage_resource(att->Texture, att->CubeMapFace, att->TextureLevel);