Mesa (master): mesa: Stop skipping the FinishRenderTexture calls for winsys FBOs.

Eric Anholt anholt at kemper.freedesktop.org
Mon Mar 24 18:31:05 UTC 2014


Module: Mesa
Branch: master
Commit: 7ccb26fdecd520f91ff1197b685b8f4f63130e58
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=7ccb26fdecd520f91ff1197b685b8f4f63130e58

Author: Eric Anholt <eric at anholt.net>
Date:   Mon Mar  3 09:16:48 2014 -0800

mesa: Stop skipping the FinishRenderTexture calls for winsys FBOs.

Now that BindRenderbufferTexImage() is a thing that drivers can do, winsys
FBOs *can* have NeedsFinishRenderTexture set.

v2: Keep the short-circuit for non-BindRenderbufferTexImage() drivers
    (review by Ken).

Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>

---

 src/mesa/main/fbobject.c |    5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/src/mesa/main/fbobject.c b/src/mesa/main/fbobject.c
index c408307..107919f 100644
--- a/src/mesa/main/fbobject.c
+++ b/src/mesa/main/fbobject.c
@@ -2004,8 +2004,9 @@ check_begin_texture_render(struct gl_context *ctx, struct gl_framebuffer *fb)
 static void
 check_end_texture_render(struct gl_context *ctx, struct gl_framebuffer *fb)
 {
-   if (_mesa_is_winsys_fbo(fb))
-      return; /* can't render to texture with winsys framebuffers */
+   /* Skip if we know NeedsFinishRenderTexture won't be set. */
+   if (_mesa_is_winsys_fbo(fb) && !ctx->Driver.BindRenderbufferTexImage)
+      return;
 
    if (ctx->Driver.FinishRenderTexture) {
       GLuint i;




More information about the mesa-commit mailing list