st/mesa: remove unneeded pipe_surface_release() in st_render_texture()
This caused us to always free the pipe_surface for the renderbuffer. The subsequent call to st_update_renderbuffer_surface() would typically just recreate it. Remove the call to pipe_surface_release() and let st_update_renderbuffer_surface() take care of freeing the old surface if it needs to be replaced (because of change to mipmap level, etc). This can save quite a few calls to pipe_context::create_surface() and surface_destroy(). Reviewed-by: Marek Olšák <marek.olsak@amd.com> Reviewed-by: Jose Fonseca <jfonseca@vmware.com>
This commit is contained in:
@@ -511,8 +511,6 @@ st_render_texture(struct gl_context *ctx,
|
||||
strb->rtt_layered = att->Layered;
|
||||
pipe_resource_reference(&strb->texture, pt);
|
||||
|
||||
pipe_surface_release(pipe, &strb->surface);
|
||||
|
||||
st_update_renderbuffer_surface(st, strb);
|
||||
|
||||
strb->Base.Format = st_pipe_format_to_mesa_format(pt->format);
|
||||
|
||||
Reference in New Issue
Block a user