mirror of
https://github.com/X11Libre/xserver.git
synced 2026-09-22 20:35:43 +00:00
Merge branch 'master' into XACE-SELINUX
Conflicts: os/access.c
This commit is contained in:
commit
c3f7b86255
99 changed files with 10630 additions and 1902 deletions
37
fb/fbarc.c
37
fb/fbarc.c
|
|
@ -71,9 +71,13 @@ fbPolyArc (DrawablePtr pDrawable,
|
|||
BoxRec box;
|
||||
int x2, y2;
|
||||
RegionPtr cclip;
|
||||
int wrapped = 0;
|
||||
|
||||
cclip = fbGetCompositeClip (pGC);
|
||||
fbGetDrawable (pDrawable, dst, dstStride, dstBpp, dstXoff, dstYoff);
|
||||
#ifdef FB_ACCESS_WRAPPER
|
||||
wrapped = 1;
|
||||
#endif
|
||||
while (narcs--)
|
||||
{
|
||||
if (miCanZeroArc (parcs))
|
||||
|
|
@ -96,18 +100,43 @@ fbPolyArc (DrawablePtr pDrawable,
|
|||
y2 = box.y1 + (int)parcs->height + 1;
|
||||
box.y2 = y2;
|
||||
if ( (x2 <= SHRT_MAX) && (y2 <= SHRT_MAX) &&
|
||||
(RECT_IN_REGION(pDrawable->pScreen, cclip, &box) == rgnIN) )
|
||||
(RECT_IN_REGION(pDrawable->pScreen, cclip, &box) == rgnIN) ) {
|
||||
#ifdef FB_ACCESS_WRAPPER
|
||||
if (!wrapped) {
|
||||
fbPrepareAccess (pDrawable);
|
||||
wrapped = 1;
|
||||
}
|
||||
#endif
|
||||
(*arc) (dst, dstStride, dstBpp,
|
||||
parcs, pDrawable->x + dstXoff, pDrawable->y + dstYoff,
|
||||
pPriv->and, pPriv->xor);
|
||||
else
|
||||
} else {
|
||||
#ifdef FB_ACCESS_WRAPPER
|
||||
if (wrapped) {
|
||||
fbFinishAccess (pDrawable);
|
||||
wrapped = 0;
|
||||
}
|
||||
#endif
|
||||
miZeroPolyArc(pDrawable, pGC, 1, parcs);
|
||||
}
|
||||
}
|
||||
else
|
||||
else {
|
||||
#ifdef FB_ACCESS_WRAPPER
|
||||
if (wrapped) {
|
||||
fbFinishAccess (pDrawable);
|
||||
wrapped = 0;
|
||||
}
|
||||
#endif
|
||||
miPolyArc(pDrawable, pGC, 1, parcs);
|
||||
}
|
||||
parcs++;
|
||||
}
|
||||
fbFinishAccess (pDrawable);
|
||||
#ifdef FB_ACCESS_WRAPPER
|
||||
if (wrapped) {
|
||||
fbFinishAccess (pDrawable);
|
||||
wrapped = 0;
|
||||
}
|
||||
#endif
|
||||
}
|
||||
else
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -103,6 +103,14 @@ fbSetVisualTypes (int depth, int visuals, int bitsPerRGB)
|
|||
return miSetVisualTypes(depth, visuals, bitsPerRGB, -1);
|
||||
}
|
||||
|
||||
Bool
|
||||
fbSetVisualTypesAndMasks (int depth, int visuals, int bitsPerRGB,
|
||||
Pixel redMask, Pixel greenMask, Pixel blueMask)
|
||||
{
|
||||
return miSetVisualTypesAndMasks(depth, visuals, bitsPerRGB, -1,
|
||||
redMask, greenMask, blueMask);
|
||||
}
|
||||
|
||||
/*
|
||||
* Given a list of formats for a screen, create a list
|
||||
* of visuals and depths for the screen which coorespond to
|
||||
|
|
|
|||
Loading…
Reference in a new issue