diff options
author | Michel Dänzer <michel@tungstengraphics.com> | 2007-09-27 11:14:21 +0200 |
---|---|---|
committer | Michel Dänzer <michel@tungstengraphics.com> | 2007-09-27 11:14:21 +0200 |
commit | ca728973bce504e03bf6228d18287906c35eaa3f (patch) | |
tree | bfb48569c3487c6d1dddd3e890d92c29d8c7408e /src/radeon_exa_funcs.c | |
parent | 21593d04d222b05dbba9abd31eaa3bfb91d999b6 (diff) |
radeon: Don't use pixmap data pointer directly with EXA.
Fixes segfault with current xserver master without AccelDFS.
Diffstat (limited to 'src/radeon_exa_funcs.c')
-rw-r--r-- | src/radeon_exa_funcs.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/radeon_exa_funcs.c b/src/radeon_exa_funcs.c index c356de7c..d2338138 100644 --- a/src/radeon_exa_funcs.c +++ b/src/radeon_exa_funcs.c @@ -244,7 +244,7 @@ FUNC_NAME(RADEONUploadToScreen)(PixmapPtr pDst, int x, int y, int w, int h, #if X_BYTE_ORDER == X_BIG_ENDIAN || defined(ACCEL_CP) RINFO_FROM_SCREEN(pDst->drawable.pScreen); #endif - CARD8 *dst = pDst->devPrivate.ptr; + CARD8 *dst = info->FB + exaGetPixmapOffset(pDst); unsigned int dst_pitch = exaGetPixmapPitch(pDst); unsigned int bpp = pDst->drawable.bitsPerPixel; #ifdef ACCEL_CP @@ -362,7 +362,7 @@ FUNC_NAME(RADEONDownloadFromScreen)(PixmapPtr pSrc, int x, int y, int w, int h, ~(RADEON_NONSURF_AP0_SWP_32BPP | RADEON_NONSURF_AP1_SWP_32BPP | RADEON_NONSURF_AP0_SWP_16BPP | RADEON_NONSURF_AP1_SWP_16BPP); #endif - CARD8 *src = pSrc->devPrivate.ptr; + CARD8 *src = info->FB + exaGetPixmapOffset(pSrc); int src_pitch = exaGetPixmapPitch(pSrc); int bpp = pSrc->drawable.bitsPerPixel; #ifdef ACCEL_CP |