diff options
-rw-r--r-- | src/gallium/state_trackers/dri/common/dri_context.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/gallium/state_trackers/dri/common/dri_context.c b/src/gallium/state_trackers/dri/common/dri_context.c index e23c1bcafa..6303f05821 100644 --- a/src/gallium/state_trackers/dri/common/dri_context.c +++ b/src/gallium/state_trackers/dri/common/dri_context.c @@ -191,6 +191,11 @@ dri_make_current(__DRIcontext * cPriv, read->texture_stamp = driReadPriv->lastStamp - 1; } + if (old_st && old_st != ctx->st) { + ctx->st->notify_invalid_framebuffer(ctx->st, &draw->base); + if (draw != read) + ctx->st->notify_invalid_framebuffer(ctx->st, &read->base); + } ctx->stapi->make_current(ctx->stapi, ctx->st, &draw->base, &read->base); return GL_TRUE; |