diff --git a/src/gallium/state_trackers/dri/dri_drawable.c b/src/gallium/state_trackers/dri/dri_drawable.c index 4d7596a831a..195ae7b8bc2 100644 --- a/src/gallium/state_trackers/dri/dri_drawable.c +++ b/src/gallium/state_trackers/dri/dri_drawable.c @@ -288,11 +288,11 @@ dri_update_buffer(struct pipe_screen *screen, void *context_private) ctx->r_stamp == *ctx->rPriv->pStamp) return; + st_flush(ctx->st, PIPE_FLUSH_FRAME, NULL); + ctx->d_stamp = *ctx->dPriv->pStamp; ctx->r_stamp = *ctx->rPriv->pStamp; - st_flush(ctx->st, PIPE_FLUSH_RENDER_CACHE, NULL); - /* Ask the X server for new renderbuffers. */ dri_get_buffers(ctx->dPriv); if (ctx->dPriv != ctx->rPriv)