st/mesa: flush bitmap cache before compute dispatch

In the unlikely case that a program uses glBitmap to render to a framebuffer
whose texture is bound in a compute shader.

Found by inspection.

Cc: 11.2 12.0 <mesa-stable@lists.freedesktop.org>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
(cherry picked from commit c542b7e43d)
This commit is contained in:
Nicolai Hähnle 2016-06-09 12:12:34 +02:00 committed by Emil Velikov
parent a0235eb0f7
commit 6775b169cd

View file

@ -28,6 +28,7 @@
#include "main/state.h"
#include "st_atom.h"
#include "st_context.h"
#include "st_cb_bitmap.h"
#include "st_cb_bufferobjects.h"
#include "st_cb_compute.h"
@ -44,6 +45,8 @@ static void st_dispatch_compute_common(struct gl_context *ctx,
struct pipe_context *pipe = st->pipe;
struct pipe_grid_info info = { 0 };
st_flush_bitmap_cache(st);
if (ctx->NewState)
_mesa_update_state(ctx);