diff options
author | Alex Deucher <alexdeucher@gmail.com> | 2009-04-16 20:33:28 -0400 |
---|---|---|
committer | Alex Deucher <alexdeucher@gmail.com> | 2009-04-17 10:25:00 -0400 |
commit | 00266177bed2dc8693df497ca3ec19f2dc4adc05 (patch) | |
tree | 65374e696fa6699dfcf68eb4204146088affe46c /src/radeon_textured_video.c | |
parent | 85323a7f84381fef7fad20c7f7ec601637af9aa7 (diff) |
R3xx/R5xx: only apply Xv attributes if bicubic is disabled
Provides consistent output
Diffstat (limited to 'src/radeon_textured_video.c')
-rw-r--r-- | src/radeon_textured_video.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/radeon_textured_video.c b/src/radeon_textured_video.c index 2318a62e..5c467128 100644 --- a/src/radeon_textured_video.c +++ b/src/radeon_textured_video.c @@ -356,8 +356,10 @@ RADEONPutImageTextured(ScrnInfoPtr pScrn, /* Bicubic filter setup */ pPriv->bicubic_enabled = (pPriv->bicubic_state != BICUBIC_OFF); - if (!(IS_R300_3D || IS_R500_3D)) + if (!(IS_R300_3D || IS_R500_3D)) { pPriv->bicubic_enabled = FALSE; + pPriv->bicubic_state = BICUBIC_OFF; + } if (pPriv->bicubic_enabled && (pPriv->bicubic_state == BICUBIC_AUTO)) { /* * Applying the bicubic filter with a scale of less than 200% @@ -372,7 +374,7 @@ RADEONPutImageTextured(ScrnInfoPtr pScrn, case FOURCC_I420: srcPitch = (width + 3) & ~3; srcPitch2 = ((width >> 1) + 3) & ~3; - if (pPriv->bicubic_enabled) { + if (pPriv->bicubic_state != BICUBIC_OFF) { dstPitch = ((dst_width << 1) + 15) & ~15; dstPitch = (dstPitch + 63) & ~63; } else { @@ -502,7 +504,7 @@ RADEONPutImageTextured(ScrnInfoPtr pScrn, srcPitch, srcPitch2, pPriv->src_pitch, width, height); } - } else if (pPriv->bicubic_enabled) { + } else if (pPriv->bicubic_state != BICUBIC_OFF) { top &= ~1; nlines = ((((y2 + 0xffff) >> 16) + 1) & ~1) - top; s2offset = srcPitch * height; |