[Mesa-dev] [PATCH] mesa: Support EXT_framebuffer_blit targets in ES 3.0 as well.
Matt Turner
mattst88 at gmail.com
Mon Nov 19 10:31:34 PST 2012
On Sat, Nov 17, 2012 at 11:31 PM, Kenneth Graunke <kenneth at whitecape.org> wrote:
> GL_READ_FRAMEBUFFER and GL_DRAW_FRAMEBUFFER are valid targets in ES 3.
>
> Fixes 23 es3conform framebuffer_blit tests. Two more go from fail to
> crash, but that appears to be because they actually run now.
> ---
> src/mesa/main/fbobject.c | 9 +++++----
> 1 file changed, 5 insertions(+), 4 deletions(-)
>
> diff --git a/src/mesa/main/fbobject.c b/src/mesa/main/fbobject.c
> index ef739c1..223aef1 100644
> --- a/src/mesa/main/fbobject.c
> +++ b/src/mesa/main/fbobject.c
> @@ -31,6 +31,7 @@
> * Brian Paul
> */
>
> +#include <stdbool.h>
>
> #include "buffers.h"
> #include "context.h"
> @@ -162,13 +163,13 @@ invalidate_framebuffer(struct gl_framebuffer *fb)
> static struct gl_framebuffer *
> get_framebuffer_target(struct gl_context *ctx, GLenum target)
> {
> + bool have_fb_blit = _mesa_is_gles3(ctx) ||
> + (ctx->Extensions.EXT_framebuffer_blit && _mesa_is_desktop_gl(ctx));
> switch (target) {
> case GL_DRAW_FRAMEBUFFER:
> - return ctx->Extensions.EXT_framebuffer_blit && _mesa_is_desktop_gl(ctx)
> - ? ctx->DrawBuffer : NULL;
> + return have_fb_blit ? ctx->DrawBuffer : NULL;
> case GL_READ_FRAMEBUFFER:
> - return ctx->Extensions.EXT_framebuffer_blit && _mesa_is_desktop_gl(ctx)
> - ? ctx->ReadBuffer : NULL;
> + return have_fb_blit ? ctx->ReadBuffer : NULL;
> case GL_FRAMEBUFFER_EXT:
> return ctx->DrawBuffer;
> default:
> --
> 1.8.0
Tested-by: Matt Turner <mattst88 at gmail.com>
More information about the mesa-dev
mailing list