summaryrefslogtreecommitdiff
path: root/composite
diff options
context:
space:
mode:
authorVille Syrjälä <ville.syrjala@nokia.com>2011-04-13 21:45:43 +0300
committerVille Syrjälä <ville.syrjala@nokia.com>2011-05-04 19:01:01 +0300
commitf2001b0f6dffa0a8f05def4a86ea37c4c91db724 (patch)
tree371ac915456a69dabf5e6d6dce540b78968d1d7b /composite
parent74663e61528346aeea9c11908b6980b51dcaeb68 (diff)
composite: Fix pWin->redirectDraw when changing between manual and automatic redirection
compAllowPixmap() is not called when changing between manual and automatic redirection modes. That means pWin->redirectDraw is left with an incorrect value, and miComputeClips() gets confused whether the window is supposed to be treated as transparent or not. Fix the issue by updating pWin->redirectDraw in compCheckRedirect() even when not calling compAllocPixmap(). Signed-off-by: Ville Syrjälä <ville.syrjala@nokia.com>
Diffstat (limited to 'composite')
-rw-r--r--composite/compwindow.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/composite/compwindow.c b/composite/compwindow.c
index bcbdf3572..d2a866d6f 100644
--- a/composite/compwindow.c
+++ b/composite/compwindow.c
@@ -171,6 +171,11 @@ compCheckRedirect (WindowPtr pWin)
compRestoreWindow (pWin, pPixmap);
(*pScreen->DestroyPixmap) (pPixmap);
}
+ } else if (should) {
+ if (cw->update == CompositeRedirectAutomatic)
+ pWin->redirectDraw = RedirectDrawAutomatic;
+ else
+ pWin->redirectDraw = RedirectDrawManual;
}
return TRUE;
}