]> git.pld-linux.org Git - packages/xorg-xserver-server.git/blame - xorg-xserver-server-backclear.patch
- rel 4; rebuild with fixed Mesa
[packages/xorg-xserver-server.git] / xorg-xserver-server-backclear.patch
CommitLineData
05926b50
JR
1--- xorg-server-1.6.3/composite/compalloc.c 2009-07-07 13:48:57.000000000 -0400
2+++ xorg-server-1.6.3-backclear/composite/compalloc.c 2009-09-09 11:55:03.000000000 -0400
3@@ -483,65 +483,33 @@
4
5 pPixmap->screen_x = x;
6 pPixmap->screen_y = y;
7-
8- if (pParent->drawable.depth == pWin->drawable.depth)
9- {
10- GCPtr pGC = GetScratchGC (pWin->drawable.depth, pScreen);
11-
12- /*
13- * Copy bits from the parent into the new pixmap so that it will
14- * have "reasonable" contents in case for background None areas.
15- */
16- if (pGC)
17- {
18- XID val = IncludeInferiors;
19-
20- ValidateGC(&pPixmap->drawable, pGC);
21- dixChangeGC (serverClient, pGC, GCSubwindowMode, &val, NULL);
22- (*pGC->ops->CopyArea) (&pParent->drawable,
23- &pPixmap->drawable,
24- pGC,
25- x - pParent->drawable.x,
26- y - pParent->drawable.y,
27- w, h, 0, 0);
28- FreeScratchGC (pGC);
29- }
30- }
31- else
32+
33 {
34- PictFormatPtr pSrcFormat = compWindowFormat (pParent);
35- PictFormatPtr pDstFormat = compWindowFormat (pWin);
36+ /*
37+ * Initialize new backing pixmap as fully transparent.
38+ */
39+ PictFormatPtr pDstFormat = compWindowFormat (pWin);
40 XID inferiors = IncludeInferiors;
41 int error;
42
43- PicturePtr pSrcPicture = CreatePicture (None,
44- &pParent->drawable,
45- pSrcFormat,
46- CPSubwindowMode,
47- &inferiors,
48- serverClient, &error);
49-
50 PicturePtr pDstPicture = CreatePicture (None,
51 &pPixmap->drawable,
52 pDstFormat,
53 0, 0,
54 serverClient, &error);
55
56- if (pSrcPicture && pDstPicture)
57+ if (pDstPicture)
58 {
59- CompositePicture (PictOpSrc,
60- pSrcPicture,
61+ CompositePicture (PictOpClear,
62+ pDstPicture,
63 NULL,
64 pDstPicture,
65- x - pParent->drawable.x,
66- y - pParent->drawable.y,
67- 0, 0, 0, 0, w, h);
68+ 0, 0, 0, 0, 0, 0, w, h);
69 }
70- if (pSrcPicture)
71- FreePicture (pSrcPicture, 0);
72 if (pDstPicture)
73 FreePicture (pDstPicture, 0);
74 }
75+
76 return pPixmap;
77 }
78
This page took 0.044229 seconds and 4 git commands to generate.