diff options
author | Alex Deucher <alexdeucher@gmail.com> | 2011-02-11 03:12:43 -0500 |
---|---|---|
committer | Alex Deucher <alexdeucher@gmail.com> | 2011-02-11 03:12:43 -0500 |
commit | 92ffce1892d24a98d789aad57a4230cadb0c812a (patch) | |
tree | 099235cecbbe70f93d4f534db2b275684b25a8e1 /src/evergreen_exa.c | |
parent | 39104c6e8461cf49c1bb03a18858ad75a9d98b46 (diff) |
EXA/r6xx+: properly account for height alignment in copy temp buffer
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
Diffstat (limited to 'src/evergreen_exa.c')
-rw-r--r-- | src/evergreen_exa.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/evergreen_exa.c b/src/evergreen_exa.c index 07e38195..04903eaf 100644 --- a/src/evergreen_exa.c +++ b/src/evergreen_exa.c @@ -459,7 +459,9 @@ EVERGREENPrepareCopy(PixmapPtr pSrc, PixmapPtr pDst, return FALSE; if (accel_state->same_surface == TRUE) { - unsigned long size = pDst->drawable.height * accel_state->dst_obj.pitch * pDst->drawable.bitsPerPixel/8; + unsigned height = RADEON_ALIGN(pDst->drawable.height, + drmmode_get_height_align(pScrn, accel_state->dst_obj.tiling_flags)); + unsigned long size = height * accel_state->dst_obj.pitch * pDst->drawable.bitsPerPixel/8; if (accel_state->copy_area_bo) { radeon_bo_unref(accel_state->copy_area_bo); |