diff options
author | Brian Paul <[email protected]> | 2010-03-08 11:31:23 -0700 |
---|---|---|
committer | Brian Paul <[email protected]> | 2010-03-08 11:39:51 -0700 |
commit | 80dc54e308dfb1fad344272978ff14646995e00a (patch) | |
tree | 5d344a61917a0da1c5d9e4f3ad99c94591845e2a /src/mesa | |
parent | df9bf78f888702542a506f551204a2e7dc8b7df1 (diff) |
st/mesa: don't detach renderbuffer, surface in st_finish_render_texture()
There's no reason to release the renderbuffer from the framebuffer object
or release the gallium surface in this function (they're reference counted).
In fact, we don't want to do this because we may later use the texture as a
pixel source (ex: glBlitFramebuffer) and need the surface.
Fixes fd.o bug 26923 and is part of the fix for bug 26932.
Diffstat (limited to 'src/mesa')
-rw-r--r-- | src/mesa/state_tracker/st_cb_fbo.c | 5 |
1 files changed, 0 insertions, 5 deletions
diff --git a/src/mesa/state_tracker/st_cb_fbo.c b/src/mesa/state_tracker/st_cb_fbo.c index 8fded0c69fc..00e9d1dccbd 100644 --- a/src/mesa/state_tracker/st_cb_fbo.c +++ b/src/mesa/state_tracker/st_cb_fbo.c @@ -410,17 +410,12 @@ st_finish_render_texture(GLcontext *ctx, st_flush( ctx->st, PIPE_FLUSH_RENDER_CACHE, NULL ); - if (strb->surface) - pipe_surface_reference( &strb->surface, NULL ); - strb->rtt = NULL; /* printf("FINISH RENDER TO TEXTURE surf=%p\n", strb->surface); */ - _mesa_reference_renderbuffer(&att->Renderbuffer, NULL); - /* restore previous framebuffer state */ st_invalidate_state(ctx, _NEW_BUFFERS); } |