[uxa] Check xalloc returns and deal with failure
Failing xalloc in a rendering function means just dropping the drawing on the floor (that's what we've always done).
This commit is contained in:
parent
8f10bfb127
commit
68f0872db6
|
|
@ -508,6 +508,8 @@ uxa_poly_point(DrawablePtr pDrawable, GCPtr pGC, int mode, int npt,
|
|||
}
|
||||
|
||||
prect = xalloc(sizeof(xRectangle) * npt);
|
||||
if (!prect)
|
||||
return;
|
||||
for (i = 0; i < npt; i++) {
|
||||
prect[i].x = ppt[i].x;
|
||||
prect[i].y = ppt[i].y;
|
||||
|
|
@ -543,6 +545,8 @@ uxa_poly_lines(DrawablePtr pDrawable, GCPtr pGC, int mode, int npt,
|
|||
}
|
||||
|
||||
prect = xalloc(sizeof(xRectangle) * (npt - 1));
|
||||
if (!prect)
|
||||
return;
|
||||
x1 = ppt[0].x;
|
||||
y1 = ppt[0].y;
|
||||
/* If we have any non-horizontal/vertical, fall back. */
|
||||
|
|
@ -612,6 +616,8 @@ uxa_poly_segment (DrawablePtr pDrawable, GCPtr pGC, int nseg,
|
|||
}
|
||||
|
||||
prect = xalloc(sizeof(xRectangle) * nseg);
|
||||
if (!prect)
|
||||
return;
|
||||
for (i = 0; i < nseg; i++) {
|
||||
if (pSeg[i].x1 < pSeg[i].x2) {
|
||||
prect[i].x = pSeg[i].x1;
|
||||
|
|
|
|||
Loading…
Reference in New Issue