[965] Fix software fallbacks with region-backed textures.
This commit is contained in:
parent
c1d6b874b3
commit
98d4355240
|
@ -207,6 +207,7 @@ do { \
|
|||
void intelSpanRenderStart( GLcontext *ctx )
|
||||
{
|
||||
struct intel_context *intel = intel_context(ctx);
|
||||
int i;
|
||||
|
||||
if (intel->need_flush) {
|
||||
LOCK_HARDWARE(intel);
|
||||
|
@ -226,11 +227,19 @@ void intelSpanRenderStart( GLcontext *ctx )
|
|||
intel_region_map(intel, intel->front_region);
|
||||
intel_region_map(intel, intel->back_region);
|
||||
intel_region_map(intel, intel->depth_region);
|
||||
|
||||
for (i = 0; i < ctx->Const.MaxTextureCoordUnits; i++) {
|
||||
if (ctx->Texture.Unit[i]._ReallyEnabled) {
|
||||
struct gl_texture_object *texObj = ctx->Texture.Unit[i]._Current;
|
||||
intel_tex_map_images(intel, intel_texture_object(texObj));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void intelSpanRenderFinish( GLcontext *ctx )
|
||||
{
|
||||
struct intel_context *intel = intel_context( ctx );
|
||||
int i;
|
||||
|
||||
_swrast_flush( ctx );
|
||||
|
||||
|
@ -240,6 +249,13 @@ void intelSpanRenderFinish( GLcontext *ctx )
|
|||
intel_region_unmap(intel, intel->back_region);
|
||||
intel_region_unmap(intel, intel->depth_region);
|
||||
|
||||
for (i = 0; i < ctx->Const.MaxTextureCoordUnits; i++) {
|
||||
if (ctx->Texture.Unit[i]._ReallyEnabled) {
|
||||
struct gl_texture_object *texObj = ctx->Texture.Unit[i]._Current;
|
||||
intel_tex_unmap_images(intel, intel_texture_object(texObj));
|
||||
}
|
||||
}
|
||||
|
||||
UNLOCK_HARDWARE( intel );
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue