[Mesa-dev] [PATCH] st/dri: Invalidate drawables on context switch
Jakob Bornecrantz
wallbraker at gmail.com
Tue Jun 21 04:46:05 PDT 2011
On Tue, Jun 21, 2011 at 1:40 PM, Benjamin Franzke
<benjaminfranzke at googlemail.com> wrote:
> Actually I wasnt sure, but theres nothing like that in glx/dri2_glx.c
> or egl_dri2.
> Furthermore the intel driver does sth similar.
I was talking about st/mesa (GL), I'm not to familiar with the
st_manager.c and/or the drawable code but doesn't this happen already
or does this fix a bug?
Cheers Jakob.
> 2011/6/21 Jakob Bornecrantz <wallbraker at gmail.com>:
>> On Tue, Jun 21, 2011 at 1:32 PM, Benjamin Franzke
>> <benjaminfranzke at googlemail.com> wrote:
>>> ---
>>> .../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 e23c1bc..0f9e4e5 100644
>>> --- a/src/gallium/state_trackers/dri/common/dri_context.c
>>> +++ b/src/gallium/state_trackers/dri/common/dri_context.c
>>> @@ -192,6 +192,11 @@ dri_make_current(__DRIcontext * cPriv,
>>> }
>>>
>>> ctx->stapi->make_current(ctx->stapi, ctx->st, &draw->base, &read->base);
>>> + 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);
>>> + }
>>
>> Shouldn't the client api state tracker be smart enough to do this in
>> the make_current call?
>>
>> Cheers Jakob.
>>
>
More information about the mesa-dev
mailing list