From e76b6349516d5d1c8f7167d6f5419e0d06a546c3 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Mon, 26 Mar 2007 16:04:50 -0700 Subject: [PATCH 01/10] Fix indentation of fakexa help text. --- hw/kdrive/ephyr/ephyrinit.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hw/kdrive/ephyr/ephyrinit.c b/hw/kdrive/ephyr/ephyrinit.c index a77b87e5e..45e2d3067 100644 --- a/hw/kdrive/ephyr/ephyrinit.c +++ b/hw/kdrive/ephyr/ephyrinit.c @@ -81,7 +81,7 @@ ddxUseMsg (void) ErrorF("-host-cursor Re-use exisiting X host server cursor\n"); ErrorF("-fullscreen Attempt to run Xephyr fullscreen\n"); ErrorF("-grayscale Simulate 8bit grayscale\n"); - ErrorF("-fakexa Simulate acceleration using software rendering\n"); + ErrorF("-fakexa Simulate acceleration using software rendering\n"); ErrorF("\n"); exit(1); From 6ed08949af4f7ac09170d3d9581e4092b24a84ee Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Tue, 27 Mar 2007 17:31:28 -0700 Subject: [PATCH 02/10] Move libcw setup to the only renderer requiring it (XAA). Additionally, protect libcw setup behind checks for Render, to avoid segfaulting if Render isn't available (xnest). The previous setup was an ABI-preserving dance, which is better nuked now. Now, anything that needs libcw must explicitly initialize it, and miDisableCompositeWrapper (previously only called by EXA and presumably binary drivers) is gone. --- configure.ac | 4 ---- exa/exa.c | 4 ---- hw/xfree86/loader/misym.c | 3 --- hw/xfree86/xaa/Makefile.am | 1 + hw/xfree86/xaa/xaaInit.c | 8 ++++++++ miext/cw/cw.c | 24 ++++++++++-------------- miext/cw/cw.h | 4 ---- miext/damage/damage.c | 10 ---------- 8 files changed, 19 insertions(+), 39 deletions(-) diff --git a/configure.ac b/configure.ac index 14c4ccbda..fde6a8955 100644 --- a/configure.ac +++ b/configure.ac @@ -853,10 +853,6 @@ AC_DEFINE(DAMAGE,1,[Support Damage extension]) DAMAGE_LIB='$(top_builddir)/damageext/libdamageext.la' DAMAGE_INC='-I$(top_srcdir)/damageext' MIEXT_DAMAGE_LIB='$(top_builddir)/miext/damage/libdamage.la' -dnl damage (may) need the composite wrapper when composite is enabled -if test "$COMPOSITE" = yes; then - MIEXT_DAMAGE_LIB="$MIEXT_DAMAGE_LIB "'$(top_builddir)/miext/cw/libcw.la' -fi MIEXT_DAMAGE_INC='-I$(top_srcdir)/miext/damage' AC_DEFINE(XINPUT, 1, [Support X Input extension]) diff --git a/exa/exa.c b/exa/exa.c index e9f42df45..dd27d5e89 100644 --- a/exa/exa.c +++ b/exa/exa.c @@ -668,10 +668,6 @@ exaDriverInit (ScreenPtr pScreen, } #endif -#ifdef COMPOSITE - miDisableCompositeWrapper(pScreen); -#endif - #ifdef MITSHM /* Re-register with the MI funcs, which don't allow shared pixmaps. * Shared pixmaps are almost always a performance loss for us, but this diff --git a/hw/xfree86/loader/misym.c b/hw/xfree86/loader/misym.c index 46d6a024d..78ae10e02 100644 --- a/hw/xfree86/loader/misym.c +++ b/hw/xfree86/loader/misym.c @@ -208,9 +208,6 @@ _X_HIDDEN void *miLookupTab[] = { #ifdef RENDER SYMFUNC(miGlyphExtents) #endif -#ifdef COMPOSITE - SYMFUNC(miDisableCompositeWrapper) -#endif #ifdef DAMAGE SYMFUNC(DamageDamageRegion) #endif diff --git a/hw/xfree86/xaa/Makefile.am b/hw/xfree86/xaa/Makefile.am index 5d529b118..6ed8303a4 100644 --- a/hw/xfree86/xaa/Makefile.am +++ b/hw/xfree86/xaa/Makefile.am @@ -9,6 +9,7 @@ MSB_3_FIXED = mf3-xaaBitmap.c mf3-xaaStipple.c POLYSEG = s-xaaLine.c s-xaaDashLine.c libxaa_la_LDFLAGS = -avoid-version +libxaa_la_LIBADD = $(top_builddir)/miext/cw/libcw.la module_LTLIBRARIES = libxaa.la libxaa_la_SOURCES = xaaInit.c xaaGC.c xaaInitAccel.c xaaFallback.c \ diff --git a/hw/xfree86/xaa/xaaInit.c b/hw/xfree86/xaa/xaaInit.c index 1542fc26e..79a0e4ceb 100644 --- a/hw/xfree86/xaa/xaaInit.c +++ b/hw/xfree86/xaa/xaaInit.c @@ -227,6 +227,14 @@ XAAInit(ScreenPtr pScreen, XAAInfoRecPtr infoRec) if(infoRec->Flags & MICROSOFT_ZERO_LINE_BIAS) miSetZeroLineBias(pScreen, OCTANT1 | OCTANT2 | OCTANT3 | OCTANT4); +#ifdef COMPOSITE + /* Initialize the composite wrapper. This needs to happen after the + * wrapping above (so it comes before us), but before all other extensions, + * so it doesn't confuse them. (particularly damage). + */ + miInitializeCompositeWrapper(pScreen); +#endif + return TRUE; } diff --git a/miext/cw/cw.c b/miext/cw/cw.c index f60f8cf28..69502711a 100644 --- a/miext/cw/cw.c +++ b/miext/cw/cw.c @@ -50,7 +50,6 @@ int cwWindowIndex; #ifdef RENDER int cwPictureIndex; #endif -static Bool cwDisabled[MAXSCREENS]; static unsigned long cwGeneration = 0; extern GCOps cwGCOps; @@ -619,9 +618,9 @@ void miInitializeCompositeWrapper(ScreenPtr pScreen) { cwScreenPtr pScreenPriv; - - if (cwDisabled[pScreen->myNum]) - return; +#ifdef RENDER + Bool has_render = GetPictureScreenIfSet(pScreen) != NULL; +#endif if (cwGeneration != serverGeneration) { @@ -631,7 +630,8 @@ miInitializeCompositeWrapper(ScreenPtr pScreen) cwGCIndex = AllocateGCPrivateIndex(); cwWindowIndex = AllocateWindowPrivateIndex(); #ifdef RENDER - cwPictureIndex = AllocatePicturePrivateIndex(); + if (has_render) + cwPictureIndex = AllocatePicturePrivateIndex(); #endif cwGeneration = serverGeneration; } @@ -640,8 +640,10 @@ miInitializeCompositeWrapper(ScreenPtr pScreen) if (!AllocateWindowPrivate(pScreen, cwWindowIndex, 0)) return; #ifdef RENDER - if (!AllocatePicturePrivate(pScreen, cwPictureIndex, 0)) - return; + if (has_render) { + if (!AllocatePicturePrivate(pScreen, cwPictureIndex, 0)) + return; + } #endif pScreenPriv = (cwScreenPtr)xalloc(sizeof(cwScreenRec)); if (!pScreenPriv) @@ -661,17 +663,11 @@ miInitializeCompositeWrapper(ScreenPtr pScreen) SCREEN_EPILOGUE(pScreen, GetWindowPixmap, cwGetWindowPixmap); #ifdef RENDER - if (GetPictureScreen (pScreen)) + if (has_render) cwInitializeRender(pScreen); #endif } -_X_EXPORT void -miDisableCompositeWrapper(ScreenPtr pScreen) -{ - cwDisabled[pScreen->myNum] = TRUE; -} - static Bool cwCloseScreen (int i, ScreenPtr pScreen) { diff --git a/miext/cw/cw.h b/miext/cw/cw.h index 09cfc7828..69abbbfed 100644 --- a/miext/cw/cw.h +++ b/miext/cw/cw.h @@ -169,7 +169,3 @@ cwFiniRender (ScreenPtr pScreen); void miInitializeCompositeWrapper(ScreenPtr pScreen); - -/* Must be called before miInitializeCompositeWrapper */ -void -miDisableCompositeWrapper(ScreenPtr pScreen); diff --git a/miext/damage/damage.c b/miext/damage/damage.c index 6f1ee2894..d93074758 100755 --- a/miext/damage/damage.c +++ b/miext/damage/damage.c @@ -1831,16 +1831,6 @@ DamageSetup (ScreenPtr pScreen) if (!pScrPriv) return FALSE; -#ifdef COMPOSITE - /* This is a kludge to ensure wrapping order with the composite wrapper. - * If it's done from compinit.c, then DamageSetup may be called before the - * extension init phase, so that cw will be higher in the wrapping chain and - * rewrite drawables before damage gets to it, causing confusion. - */ - if (!noCompositeExtension) - miInitializeCompositeWrapper (pScreen); -#endif - pScrPriv->internalLevel = 0; pScrPriv->pScreenDamage = 0; From 8afc7e2eb3ebec48d3879bf269143259c8bc18c8 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Mon, 26 Mar 2007 15:55:38 -0700 Subject: [PATCH 03/10] Refuse to initialize Composite if Render is not present. Composite relies on the presence of Render, in particular for the automatic compositing. --- composite/compext.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/composite/compext.c b/composite/compext.c index 4c25cc7da..3a9f896df 100644 --- a/composite/compext.c +++ b/composite/compext.c @@ -678,6 +678,12 @@ CompositeExtensionInit (void) ExtensionEntry *extEntry; int s; + /* Ensure that Render is initialized on all screens. */ + for (s = 0; s < screenInfo.numScreens; s++) { + if (GetPictureScreenIfSet(screenInfo.screens[s]) == NULL) + return; + } + CompositeClientWindowType = CreateNewResourceType (FreeCompositeClientWindow); if (!CompositeClientWindowType) return; From 5e7936371c9e1ac48e19bf1e9e3f71f037fd9b5d Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Mon, 26 Mar 2007 20:18:18 -0700 Subject: [PATCH 04/10] Disable Composite when the screen's visual is pseudocolor. Rendering fails badly in this case, and I don't care enough to fix it. --- composite/compext.c | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/composite/compext.c b/composite/compext.c index 3a9f896df..af05b4a65 100644 --- a/composite/compext.c +++ b/composite/compext.c @@ -678,9 +678,22 @@ CompositeExtensionInit (void) ExtensionEntry *extEntry; int s; - /* Ensure that Render is initialized on all screens. */ for (s = 0; s < screenInfo.numScreens; s++) { - if (GetPictureScreenIfSet(screenInfo.screens[s]) == NULL) + ScreenPtr pScreen = screenInfo.screens[s]; + VisualPtr vis; + + /* Composite on 8bpp pseudocolor root windows appears to fail, so + * just disable it on anything pseudocolor for safety. + */ + for (vis = pScreen->visuals; vis->vid != pScreen->rootVisual; vis++) + ; + if ((vis->class | DynamicClass) == PseudoColor) + return; + + /* Ensure that Render is initialized, which is required for automatic + * compositing. + */ + if (GetPictureScreenIfSet(pScreen) == NULL) return; } From 0bfc3cc22db94ec6867596606fe93228e315c847 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Tue, 27 Mar 2007 13:12:21 -0700 Subject: [PATCH 05/10] Disable composite when Xinerama is active. It will likely take a decent bit of work to make that work right. --- composite/compext.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/composite/compext.c b/composite/compext.c index af05b4a65..ba37e7d1f 100644 --- a/composite/compext.c +++ b/composite/compext.c @@ -696,6 +696,11 @@ CompositeExtensionInit (void) if (GetPictureScreenIfSet(pScreen) == NULL) return; } + /* Xinerama's rewriting of window drawing before Composite gets to it + * breaks Composite. + */ + if (!noPanoramiXExtension) + return; CompositeClientWindowType = CreateNewResourceType (FreeCompositeClientWindow); if (!CompositeClientWindowType) From 1af2ef0b25fd8017a3271e624a5f1548f02b09f9 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Tue, 27 Mar 2007 13:13:45 -0700 Subject: [PATCH 06/10] Enable Composite by default now that it disables itself in the known bad cases. --- os/utils.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/os/utils.c b/os/utils.c index 2fc5cbb3f..e605a6c7a 100644 --- a/os/utils.c +++ b/os/utils.c @@ -136,10 +136,7 @@ _X_EXPORT Bool noTestExtensions; _X_EXPORT Bool noBigReqExtension = FALSE; #endif #ifdef COMPOSITE - /* COMPOSITE is disabled by default for now until the - * interface is stable */ - #define COMPOSITE_DEFAULT FALSE -_X_EXPORT Bool noCompositeExtension = !COMPOSITE_DEFAULT; +_X_EXPORT Bool noCompositeExtension = FALSE; #endif #ifdef DAMAGE From 85220446359a75ea2c359b418b4051c04eea739c Mon Sep 17 00:00:00 2001 From: Daniel Stone Date: Wed, 28 Mar 2007 13:03:32 +0300 Subject: [PATCH 07/10] GL: Update for Mesa changes Added s_fragprog.c to fix the build. --- GL/mesa/swrast/Makefile.am | 1 + 1 file changed, 1 insertion(+) diff --git a/GL/mesa/swrast/Makefile.am b/GL/mesa/swrast/Makefile.am index 9a6aa92fb..bffb1e7c1 100644 --- a/GL/mesa/swrast/Makefile.am +++ b/GL/mesa/swrast/Makefile.am @@ -34,6 +34,7 @@ nodist_libswrast_la_SOURCES = s_aaline.c \ s_drawpix.c \ s_feedback.c \ s_fog.c \ + s_fragprog.c \ s_imaging.c \ s_lines.c \ s_logic.c \ From 5ba4d9eedf1b4ce4795bf910cd184872e2d9b3fc Mon Sep 17 00:00:00 2001 From: Adam Jackson Date: Wed, 28 Mar 2007 12:03:19 -0400 Subject: [PATCH 08/10] Refuse to create tiny modes from EDID detailed timing. --- hw/xfree86/ddc/edid_modes.c | 13 +++++++++++++ hw/xfree86/modes/xf86EdidModes.c | 13 +++++++++++++ 2 files changed, 26 insertions(+) diff --git a/hw/xfree86/ddc/edid_modes.c b/hw/xfree86/ddc/edid_modes.c index cfc8ddc13..926bc8921 100644 --- a/hw/xfree86/ddc/edid_modes.c +++ b/hw/xfree86/ddc/edid_modes.c @@ -107,6 +107,19 @@ DDCModeFromDetailedTiming(int scrnIndex, struct detailed_timings *timing, { DisplayModePtr Mode; + /* + * Refuse to create modes that are insufficiently large. 64 is a random + * number, maybe the spec says something about what the minimum is. In + * particular I see this frequently with _old_ EDID, 1.0 or so, so maybe + * our parser is just being too aggresive there. + */ + if (timing->h_active < 64 || timing->v_active < 64) { + xf86DrvMsg(scrnIndex, X_INFO, + "%s: Ignoring tiny %dx%d mode\n", __func__, + timing->h_active, timing->v_active); + return NULL; + } + /* We don't do stereo */ if (timing->stereo) { xf86DrvMsg(scrnIndex, X_INFO, diff --git a/hw/xfree86/modes/xf86EdidModes.c b/hw/xfree86/modes/xf86EdidModes.c index c4cf6870b..7a8ec1935 100644 --- a/hw/xfree86/modes/xf86EdidModes.c +++ b/hw/xfree86/modes/xf86EdidModes.c @@ -197,6 +197,19 @@ DDCModeFromDetailedTiming(int scrnIndex, struct detailed_timings *timing, { DisplayModePtr Mode; + /* + * Refuse to create modes that are insufficiently large. 64 is a random + * number, maybe the spec says something about what the minimum is. In + * particular I see this frequently with _old_ EDID, 1.0 or so, so maybe + * our parser is just being too aggresive there. + */ + if (timing->h_active < 64 || timing->v_active < 64) { + xf86DrvMsg(scrnIndex, X_INFO, + "%s: Ignoring tiny %dx%d mode\n", __func__, + timing->h_active, timing->v_active); + return NULL; + } + /* We don't do stereo */ if (timing->stereo) { xf86DrvMsg(scrnIndex, X_INFO, From 8c7f56d92d8471ee059c14d322af5f7f555dd5c6 Mon Sep 17 00:00:00 2001 From: Tomas Janousek Date: Wed, 28 Mar 2007 14:46:30 -0400 Subject: [PATCH 09/10] Bug #10296: Fix timer rescheduling. --- os/WaitFor.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/os/WaitFor.c b/os/WaitFor.c index d39964f30..4a606ac7d 100644 --- a/os/WaitFor.c +++ b/os/WaitFor.c @@ -125,7 +125,7 @@ struct _OsTimerRec { }; static void DoTimer(OsTimerPtr timer, CARD32 now, OsTimerPtr *prev); -static void CheckAllTimers(CARD32 now); +static void CheckAllTimers(void); static OsTimerPtr timers = NULL; /***************** @@ -204,7 +204,7 @@ WaitForSomething(int *pClientsReady) timeout = timers->expires - now; if (timeout > 0 && timeout > timers->delta + 250) { /* time has rewound. reset the timers. */ - CheckAllTimers(now); + CheckAllTimers(); } if (timers) { @@ -436,11 +436,14 @@ ANYSET(FdMask *src) /* If time has rewound, re-run every affected timer. * Timers might drop out of the list, so we have to restart every time. */ static void -CheckAllTimers(CARD32 now) +CheckAllTimers(void) { OsTimerPtr timer; + CARD32 now; start: + now = GetTimeInMillis(); + for (timer = timers; timer; timer = timer->next) { if (timer->expires - now > timer->delta + 250) { TimerForce(timer); From 82a8b99a6c46018885600011913267d8af9dfe13 Mon Sep 17 00:00:00 2001 From: Adam Jackson Date: Wed, 28 Mar 2007 15:17:02 -0400 Subject: [PATCH 10/10] Move the XAA private indices to be static. Technically this is an ABI break, if you aren't smart enough to be using the getter functions. Cope. --- hw/xfree86/xaa/xaaDashLine.c | 2 +- hw/xfree86/xaa/xaaGC.c | 2 +- hw/xfree86/xaa/xaaGCmisc.c | 2 +- hw/xfree86/xaa/xaaInit.c | 11 +++-------- hw/xfree86/xaa/xaaLineMisc.c | 2 +- hw/xfree86/xaa/xaaWrapper.c | 2 +- hw/xfree86/xaa/xaalocal.h | 3 --- 7 files changed, 8 insertions(+), 16 deletions(-) diff --git a/hw/xfree86/xaa/xaaDashLine.c b/hw/xfree86/xaa/xaaDashLine.c index 2a94a9e6c..1a4732baa 100644 --- a/hw/xfree86/xaa/xaaDashLine.c +++ b/hw/xfree86/xaa/xaaDashLine.c @@ -35,7 +35,7 @@ XAAPolyLinesDashed( #endif ){ XAAInfoRecPtr infoRec = GET_XAAINFORECPTR_FROM_GC(pGC); - XAAGCPtr pGCPriv = (XAAGCPtr) (pGC)->devPrivates[XAAGCIndex].ptr; + XAAGCPtr pGCPriv = (XAAGCPtr) (pGC)->devPrivates[XAAGetGCIndex()].ptr; BoxPtr pboxInit = REGION_RECTS(pGC->pCompositeClip); int nboxInit = REGION_NUM_RECTS(pGC->pCompositeClip); unsigned int bias = miGetZeroLineBias(pDrawable->pScreen); diff --git a/hw/xfree86/xaa/xaaGC.c b/hw/xfree86/xaa/xaaGC.c index e22081103..f3434c9f4 100644 --- a/hw/xfree86/xaa/xaaGC.c +++ b/hw/xfree86/xaa/xaaGC.c @@ -38,7 +38,7 @@ Bool XAACreateGC(GCPtr pGC) { ScreenPtr pScreen = pGC->pScreen; - XAAGCPtr pGCPriv = (XAAGCPtr)(pGC->devPrivates[XAAGCIndex].ptr); + XAAGCPtr pGCPriv = (XAAGCPtr)(pGC->devPrivates[XAAGetGCIndex()].ptr); Bool ret; XAA_SCREEN_PROLOGUE(pScreen,CreateGC); diff --git a/hw/xfree86/xaa/xaaGCmisc.c b/hw/xfree86/xaa/xaaGCmisc.c index f7bd576f1..a7a3f4081 100644 --- a/hw/xfree86/xaa/xaaGCmisc.c +++ b/hw/xfree86/xaa/xaaGCmisc.c @@ -305,7 +305,7 @@ XAAValidatePolylines( DrawablePtr pDraw ) { XAAInfoRecPtr infoRec = GET_XAAINFORECPTR_FROM_GC(pGC); - XAAGCPtr pGCPriv = (XAAGCPtr) (pGC)->devPrivates[XAAGCIndex].ptr; + XAAGCPtr pGCPriv = (XAAGCPtr) (pGC)->devPrivates[XAAGetGCIndex()].ptr; if(pGC->lineStyle == LineSolid) changes &= ~GCDashList; if(!changes) return; diff --git a/hw/xfree86/xaa/xaaInit.c b/hw/xfree86/xaa/xaaInit.c index 79a0e4ceb..529dbd151 100644 --- a/hw/xfree86/xaa/xaaInit.c +++ b/hw/xfree86/xaa/xaaInit.c @@ -42,14 +42,9 @@ static int XAASetDGAMode(int index, int num, DGADevicePtr devRet); static void XAAEnableDisableFBAccess (int index, Bool enable); static Bool XAAChangeWindowAttributes (WindowPtr pWin, unsigned long mask); -/* - * XXX These three should be static, but that breaks ABI compat with XF4.4 - * and Xorg 6.7.0 modules. DO NOT use them in new code, you should never - * be setting them, and you've got Get functions below. - */ -int XAAScreenIndex = -1; -int XAAGCIndex = -1; -int XAAPixmapIndex = -1; +static int XAAScreenIndex = -1; +static int XAAGCIndex = -1; +static int XAAPixmapIndex = -1; static unsigned long XAAGeneration = 0; diff --git a/hw/xfree86/xaa/xaaLineMisc.c b/hw/xfree86/xaa/xaaLineMisc.c index d786737af..537b08b97 100644 --- a/hw/xfree86/xaa/xaaLineMisc.c +++ b/hw/xfree86/xaa/xaaLineMisc.c @@ -64,7 +64,7 @@ void XAAComputeDash(GCPtr pGC) { XAAInfoRecPtr infoRec = GET_XAAINFORECPTR_FROM_GC(pGC); - XAAGCPtr pGCPriv = (XAAGCPtr) (pGC)->devPrivates[XAAGCIndex].ptr; + XAAGCPtr pGCPriv = (XAAGCPtr) (pGC)->devPrivates[XAAGetGCIndex()].ptr; Bool EvenDash = (pGC->numInDashList & 0x01) ? FALSE : TRUE; int PatternLength = 0; unsigned char* DashPtr = (unsigned char*)pGC->dash; diff --git a/hw/xfree86/xaa/xaaWrapper.c b/hw/xfree86/xaa/xaaWrapper.c index 5b525684a..6d8107b61 100644 --- a/hw/xfree86/xaa/xaaWrapper.c +++ b/hw/xfree86/xaa/xaaWrapper.c @@ -522,7 +522,7 @@ void XAASync(ScreenPtr pScreen) { XAAScreenPtr pScreenPriv = - (XAAScreenPtr) pScreen->devPrivates[XAAScreenIndex].ptr; + (XAAScreenPtr) pScreen->devPrivates[XAAGetScreenIndex()].ptr; XAAInfoRecPtr infoRec = pScreenPriv->AccelInfoRec; if(infoRec->NeedToSync) { diff --git a/hw/xfree86/xaa/xaalocal.h b/hw/xfree86/xaa/xaalocal.h index 7210d8492..c365a7de3 100644 --- a/hw/xfree86/xaa/xaalocal.h +++ b/hw/xfree86/xaa/xaalocal.h @@ -1640,9 +1640,6 @@ XAAGetPixelFromRGBA ( extern GCOps XAAFallbackOps; extern GCOps *XAAGetFallbackOps(void); extern GCFuncs XAAGCFuncs; -extern int XAAScreenIndex; /* XXX DONTUSE */ -extern int XAAGCIndex; /* XXX DONTUSE */ -extern int XAAPixmapIndex; /* XXX DONTUSE */ extern int XAAGetScreenIndex(void); extern int XAAGetGCIndex(void); extern int XAAGetPixmapIndex(void);