summaryrefslogtreecommitdiff
path: root/miext
diff options
context:
space:
mode:
Diffstat (limited to 'miext')
-rw-r--r--miext/cw/cw.c10
-rw-r--r--miext/cw/cw.h5
2 files changed, 15 insertions, 0 deletions
diff --git a/miext/cw/cw.c b/miext/cw/cw.c
index 2b8010f50..4ebf8ab8a 100644
--- a/miext/cw/cw.c
+++ b/miext/cw/cw.c
@@ -48,6 +48,7 @@ int cwWindowIndex;
#ifdef RENDER
int cwPictureIndex;
#endif
+static Bool cwDisabled[MAXSCREENS];
static unsigned long cwGeneration = 0;
extern GCOps cwGCOps;
@@ -617,6 +618,9 @@ miInitializeCompositeWrapper(ScreenPtr pScreen)
{
cwScreenPtr pScreenPriv;
+ if (cwDisabled[pScreen->myNum])
+ return;
+
if (cwGeneration != serverGeneration)
{
cwScreenIndex = AllocateScreenPrivateIndex();
@@ -660,6 +664,12 @@ miInitializeCompositeWrapper(ScreenPtr pScreen)
#endif
}
+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 1f8c400e2..67ce9cd31 100644
--- a/miext/cw/cw.h
+++ b/miext/cw/cw.h
@@ -164,5 +164,10 @@ void
cwFiniRender (ScreenPtr pScreen);
/* cw.c */
+
void
miInitializeCompositeWrapper(ScreenPtr pScreen);
+
+/* Must be called before miInitializeCompositeWrapper */
+void
+miDisableCompositeWrapper(ScreenPtr pScreen);