diff options
author | Michel Dänzer <michel.daenzer@amd.com> | 2012-02-01 13:07:11 +0100 |
---|---|---|
committer | Michel Dänzer <michel@daenzer.net> | 2012-02-01 13:28:18 +0100 |
commit | bb0e1531ac6949d38025d7dcb19234fee33b2acf (patch) | |
tree | 08209bd40c1438ab598532bc86e08a5ae7f65b01 /src | |
parent | 13b3aed4ef9afbcbaea1dcf0ed1acb162b240a3f (diff) |
Check for empty vline ranges after clamping.
The clamping could turn a previously non-empty range into an empty one.
Also, start == stop means the range is empty.
Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/evergreen_accel.c | 5 | ||||
-rw-r--r-- | src/r6xx_accel.c | 5 | ||||
-rw-r--r-- | src/radeon_commonfuncs.c | 5 |
3 files changed, 3 insertions, 12 deletions
diff --git a/src/evergreen_accel.c b/src/evergreen_accel.c index 83320c83..7c6b7774 100644 --- a/src/evergreen_accel.c +++ b/src/evergreen_accel.c @@ -284,9 +284,6 @@ void evergreen_cp_wait_vline_sync(ScrnInfoPtr pScrn, PixmapPtr pPix, drmmode_crtc = crtc->driver_private; - if (stop < start) - return; - if (!crtc->enabled) return; @@ -309,7 +306,7 @@ void evergreen_cp_wait_vline_sync(ScrnInfoPtr pScrn, PixmapPtr pPix, start = max(start, 0); stop = min(stop, crtc->mode.VDisplay); - if (start > crtc->mode.VDisplay) + if (start >= stop) return; /* on r5xx+ vline starts at viewport_y */ diff --git a/src/r6xx_accel.c b/src/r6xx_accel.c index 752165b7..94678a1b 100644 --- a/src/r6xx_accel.c +++ b/src/r6xx_accel.c @@ -345,9 +345,6 @@ r600_cp_wait_vline_sync(ScrnInfoPtr pScrn, drmBufPtr ib, PixmapPtr pPix, if (!crtc) return; - if (stop < start) - return; - if (!crtc->enabled) return; @@ -370,7 +367,7 @@ r600_cp_wait_vline_sync(ScrnInfoPtr pScrn, drmBufPtr ib, PixmapPtr pPix, start = max(start, 0); stop = min(stop, crtc->mode.VDisplay); - if (start > crtc->mode.VDisplay) + if (start >= stop) return; /* on r5xx+ vline starts at viewport_y */ diff --git a/src/radeon_commonfuncs.c b/src/radeon_commonfuncs.c index 72819490..e2b71716 100644 --- a/src/radeon_commonfuncs.c +++ b/src/radeon_commonfuncs.c @@ -839,9 +839,6 @@ void FUNC_NAME(RADEONWaitForVLine)(ScrnInfoPtr pScrn, PixmapPtr pPix, if (!crtc) return; - if (stop < start) - return; - if (!crtc->enabled) return; @@ -864,7 +861,7 @@ void FUNC_NAME(RADEONWaitForVLine)(ScrnInfoPtr pScrn, PixmapPtr pPix, start = max(start, 0); stop = min(stop, crtc->mode.VDisplay); - if (start > crtc->mode.VDisplay) + if (start >= stop) return; if (IS_AVIVO_VARIANT) { |