On 09/06/07, Stefan Dösinger <[EMAIL PROTECTED]> wrote:
> Well yes, but inside stretch_rect_fbo() src_surface isn't guaranteed
> to be a render target (either onscreen or offscreen), so I'm not sure
> that calling ActivateContext on src_surface like that will always do
> what we want. In fact, neither src_surface nor dst_surface has to be a
> render target, so wouldn't it make more sense to do the context
> activation in BltOverride instead?
Activating the context in BltOverride is redundant too, because both the
stretch and direct blit need the context activated for blitting, while
stretch_rect need a RESOURCELOAD only. So either we're activating twice for
non-fbo blits, or have an overkill for fbo blits.
Well, it can go inside the if block that checks for EXT_framebuffer_blit.

I'll check how
stretch_rect_fbo is used in other places and put an
ActivateContext(This->lastActiveRenderTarget, CTXUSAGE_RESOURCELOAD) there if
needed. This will make multithreading happy without requireing a special
surface.

Afaik, it's currently only used in BltOverride for onscreen->texture
copy, but it should imo be used for the other BltOverride cases as
well.


Reply via email to