From 8b0f17920a54bdf3d54c0d07b4293d617d2ff964 Mon Sep 17 00:00:00 2001 From: Adam Jackson Date: Fri, 30 Jul 2004 20:30:51 +0000 Subject: Bug #400 (partial): Driver fixes for the dlloader. When using dlloader, all framebuffer formats except cfb and the overlay modes should work, and r128 and radeon need to be loaded from the ati driver (both issues to be fixed soon). Tested on i740, s3virge, mach64, tdfx, vesa, and vga drivers. elfloader users shouldn't be affected. --- src/apm_accel.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'src/apm_accel.c') diff --git a/src/apm_accel.c b/src/apm_accel.c index 72b0cee..bce9e2e 100644 --- a/src/apm_accel.c +++ b/src/apm_accel.c @@ -1,4 +1,4 @@ -/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/apm/apm_accel.c,v 1.21 2002/10/08 22:14:03 tsi Exp $ */ +/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/apm/apm_accel.c,v 1.20tsi Exp $ */ #include "apm.h" #include "miline.h" @@ -70,6 +70,10 @@ ApmCacheMonoStipple(ScrnInfoPtr pScrn, PixmapPtr pPix) struct ApmStippleCacheRec *pCache; unsigned char *srcPtr; CARD32 *dstPtr; + static StippleScanlineProcPtr *StippleTab = NULL; + + if (!StippleTab) + StippleTab = LoaderSymbol("XAAStippleScanlineFuncMSBFirst"); for (i = 0; i < APM_CACHE_NUMBER; i++) if ((pApm->apmCache[i].apmStippleCache.serialNumber == pPix->drawable.serialNumber) @@ -127,7 +131,7 @@ ApmCacheMonoStipple(ScrnInfoPtr pScrn, PixmapPtr pPix) while (j + h <= pCache->apmStippleCache.h) { srcPtr = (unsigned char *)pPix->devPrivate.ptr; for (i = h; --i >= 0; ) { - (*XAAStippleScanlineFuncMSBFirst[funcNo])(dstPtr, (CARD32 *)srcPtr, 0, w, dwords); + StippleTab[funcNo](dstPtr, (CARD32 *)srcPtr, 0, w, dwords); srcPtr += pPix->devKind; dstPtr += dwords; } @@ -135,7 +139,7 @@ ApmCacheMonoStipple(ScrnInfoPtr pScrn, PixmapPtr pPix) } srcPtr = (unsigned char *)pPix->devPrivate.ptr; for (i = pCache->apmStippleCache.h - j ; --i >= 0; ) { - (*XAAStippleScanlineFuncMSBFirst[funcNo])(dstPtr, (CARD32 *)srcPtr, 0, w, dwords); + StippleTab[funcNo](dstPtr, (CARD32 *)srcPtr, 0, w, dwords); srcPtr += pPix->devKind; dstPtr += dwords; } -- cgit v1.2.3