Don't statically allocate the ChangeGC parameter array.
Because that's insane. Signed-off-by: Jamey Sharp <jamey@minilop.net> Reviewed-by: Keith Packard <keithp@keithp.com>
This commit is contained in:
parent
bff8525f84
commit
95728ca09d
29
mi/miarc.c
29
mi/miarc.c
|
@ -213,16 +213,6 @@ typedef struct _miPolyArc {
|
||||||
miArcJoinPtr joins;
|
miArcJoinPtr joins;
|
||||||
} miPolyArcRec, *miPolyArcPtr;
|
} miPolyArcRec, *miPolyArcPtr;
|
||||||
|
|
||||||
#define GCValsFunction 0
|
|
||||||
#define GCValsForeground 1
|
|
||||||
#define GCValsBackground 2
|
|
||||||
#define GCValsLineWidth 3
|
|
||||||
#define GCValsCapStyle 4
|
|
||||||
#define GCValsJoinStyle 5
|
|
||||||
#define GCValsMask (GCFunction | GCForeground | GCBackground | \
|
|
||||||
GCLineWidth | GCCapStyle | GCJoinStyle)
|
|
||||||
static CARD32 gcvals[6];
|
|
||||||
|
|
||||||
static void fillSpans(DrawablePtr pDrawable, GCPtr pGC);
|
static void fillSpans(DrawablePtr pDrawable, GCPtr pGC);
|
||||||
static void newFinalSpan(int y, int xmin, int xmax);
|
static void newFinalSpan(int y, int xmin, int xmax);
|
||||||
static void drawArc(xArc *tarc, int l, int a0, int a1, miArcFacePtr right,
|
static void drawArc(xArc *tarc, int l, int a0, int a1, miArcFacePtr right,
|
||||||
|
@ -1045,13 +1035,18 @@ miPolyArc(DrawablePtr pDraw, GCPtr pGC, int narcs, xArc *parcs)
|
||||||
pGCTo = GetScratchGC(1, pDraw->pScreen);
|
pGCTo = GetScratchGC(1, pDraw->pScreen);
|
||||||
if (!pGCTo)
|
if (!pGCTo)
|
||||||
return;
|
return;
|
||||||
gcvals[GCValsFunction] = GXcopy;
|
{
|
||||||
gcvals[GCValsForeground] = 1;
|
CARD32 gcvals[6];
|
||||||
gcvals[GCValsBackground] = 0;
|
gcvals[0] = GXcopy;
|
||||||
gcvals[GCValsLineWidth] = pGC->lineWidth;
|
gcvals[1] = 1;
|
||||||
gcvals[GCValsCapStyle] = pGC->capStyle;
|
gcvals[2] = 0;
|
||||||
gcvals[GCValsJoinStyle] = pGC->joinStyle;
|
gcvals[3] = pGC->lineWidth;
|
||||||
dixChangeGC(NullClient, pGCTo, GCValsMask, gcvals, NULL);
|
gcvals[4] = pGC->capStyle;
|
||||||
|
gcvals[5] = pGC->joinStyle;
|
||||||
|
dixChangeGC(NullClient, pGCTo, GCFunction |
|
||||||
|
GCForeground | GCBackground | GCLineWidth |
|
||||||
|
GCCapStyle | GCJoinStyle, gcvals, NULL);
|
||||||
|
}
|
||||||
|
|
||||||
/* allocate a 1 bit deep pixmap of the appropriate size, and
|
/* allocate a 1 bit deep pixmap of the appropriate size, and
|
||||||
* validate it */
|
* validate it */
|
||||||
|
|
Loading…
Reference in New Issue