diff options
author | Marek Olšák <[email protected]> | 2017-06-04 23:08:07 +0200 |
---|---|---|
committer | Marek Olšák <[email protected]> | 2017-06-07 18:46:21 +0200 |
commit | ac0aff722286095ef037beb0017f8c9170ac7c23 (patch) | |
tree | 2d5395b3a4d79b288d681139925997d2b7356446 /src/mesa/main | |
parent | 3effce4fb062371dd6c08fe57b0c12a20cf7af71 (diff) |
mesa: add gl_driver_flags::NewFramebufferSRGB
_NEW_BUFFERS updates too much stuff.
Reviewed-by: Samuel Pitoiset <[email protected]>
Reviewed-by: Nicolai Hähnle <[email protected]>
Diffstat (limited to 'src/mesa/main')
-rw-r--r-- | src/mesa/main/enable.c | 5 | ||||
-rw-r--r-- | src/mesa/main/mtypes.h | 3 |
2 files changed, 7 insertions, 1 deletions
diff --git a/src/mesa/main/enable.c b/src/mesa/main/enable.c index ef278a318a1..0e07f4c3b9a 100644 --- a/src/mesa/main/enable.c +++ b/src/mesa/main/enable.c @@ -258,7 +258,10 @@ _mesa_set_framebuffer_srgb(struct gl_context *ctx, GLboolean state) { if (ctx->Color.sRGBEnabled == state) return; - FLUSH_VERTICES(ctx, _NEW_BUFFERS); + + /* TODO: Switch i965 to the new flag and remove the conditional */ + FLUSH_VERTICES(ctx, ctx->DriverFlags.NewFramebufferSRGB ? 0 : _NEW_BUFFERS); + ctx->NewDriverState |= ctx->DriverFlags.NewFramebufferSRGB; ctx->Color.sRGBEnabled = state; if (ctx->Driver.Enable) { diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h index 7ec012321fc..9ac27111974 100644 --- a/src/mesa/main/mtypes.h +++ b/src/mesa/main/mtypes.h @@ -4402,6 +4402,9 @@ struct gl_driver_flags * gl_context::Scissor::WindowRects */ uint64_t NewWindowRectangles; + + /** gl_context::Color::sRGBEnabled */ + uint64_t NewFramebufferSRGB; }; struct gl_uniform_buffer_binding |