Module: Mesa Branch: 7.10 Commit: 23d9baa5a1979deab20f312c78533ab09c5cf976 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=23d9baa5a1979deab20f312c78533ab09c5cf976
Author: Marek Olšák <[email protected]> Date: Wed Jun 1 01:39:36 2011 +0200 st/mesa: fix changing internal format via RenderbufferStorage The problem is: The second time the function is called with a new internal format, strb->format is usually not PIPE_FORMAT_NONE. RenderbufferStorage(... GL_RGBA8 ...); RenderbufferStorage(... GL_RGBA16 ...); // had no effect on the format Broken with: fd6f2d6e5783d8810d0ab88e1c470958fd5eb2eb Test: piglit/fbo-storage-completeness NOTE: This is a candidate for the 7.10 branch. (if fd6f2d6e5783d8810d0ab88e1c470958fd5eb2eb is cherry-picked as well) Reviewed-by: Brian Paul <[email protected]> (cherry picked from commit 49d4e803d369e0faedfa44063fb7f6232faa8175) Conflicts: src/mesa/state_tracker/st_cb_fbo.c --- src/mesa/state_tracker/st_cb_fbo.c | 8 +++----- 1 files changed, 3 insertions(+), 5 deletions(-) diff --git a/src/mesa/state_tracker/st_cb_fbo.c b/src/mesa/state_tracker/st_cb_fbo.c index 2ecda93..4f43411 100644 --- a/src/mesa/state_tracker/st_cb_fbo.c +++ b/src/mesa/state_tracker/st_cb_fbo.c @@ -72,11 +72,9 @@ st_renderbuffer_alloc_storage(struct gl_context * ctx, struct gl_renderbuffer *r enum pipe_format format; struct pipe_surface surf_tmpl; - if (strb->format != PIPE_FORMAT_NONE) - format = strb->format; - else - format = st_choose_renderbuffer_format(screen, internalFormat, rb->NumSamples); - + format = st_choose_renderbuffer_format(screen, internalFormat, + rb->NumSamples); + if (format == PIPE_FORMAT_NONE) { return FALSE; } _______________________________________________ mesa-commit mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/mesa-commit
