diff options
Diffstat (limited to 'miext')
-rwxr-xr-x | miext/damage/damage.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/miext/damage/damage.c b/miext/damage/damage.c index 98f42e54c..e27b95e80 100755 --- a/miext/damage/damage.c +++ b/miext/damage/damage.c @@ -37,6 +37,9 @@ #include "gcstruct.h" #include "damage.h" #include "damagestr.h" +#ifdef COMPOSITE +#include "cw.h" +#endif #define wrap(priv, real, mem, func) {\ priv->mem = real->mem; \ @@ -1729,6 +1732,16 @@ 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; |