summaryrefslogtreecommitdiff
path: root/mi/mifpolycon.c
diff options
context:
space:
mode:
authorDaniel Stone <daniel@fooishbar.org>2007-11-05 14:08:51 +0000
committerDaniel Stone <daniel@fooishbar.org>2007-11-05 14:34:41 +0000
commitbe9ee17f960cc3d8a8f999cab1579e83d9aea520 (patch)
treef563ce4405d197063ed262da3f5355d334335e43 /mi/mifpolycon.c
parent3633ae6efb57c5405c26e8ae132b9371e5f920de (diff)
mi: Remove usage of alloca
Replace with heap allocations.
Diffstat (limited to 'mi/mifpolycon.c')
-rw-r--r--mi/mifpolycon.c18
1 files changed, 9 insertions, 9 deletions
diff --git a/mi/mifpolycon.c b/mi/mifpolycon.c
index f85197157..d19f031d7 100644
--- a/mi/mifpolycon.c
+++ b/mi/mifpolycon.c
@@ -114,15 +114,15 @@ miFillSppPoly(dst, pgc, count, ptsIn, xTrans, yTrans, xFtrans, yFtrans)
y = ymax - ymin + 1;
if ((count < 3) || (y <= 0))
return;
- ptsOut = FirstPoint = (DDXPointPtr)ALLOCATE_LOCAL(sizeof(DDXPointRec) * y);
- width = FirstWidth = (int *) ALLOCATE_LOCAL(sizeof(int) * y);
- Marked = (int *) ALLOCATE_LOCAL(sizeof(int) * count);
+ ptsOut = FirstPoint = (DDXPointPtr)xalloc(sizeof(DDXPointRec) * y);
+ width = FirstWidth = (int *) xalloc(sizeof(int) * y);
+ Marked = (int *) xalloc(sizeof(int) * count);
if(!ptsOut || !width || !Marked)
{
- if (Marked) DEALLOCATE_LOCAL(Marked);
- if (width) DEALLOCATE_LOCAL(width);
- if (ptsOut) DEALLOCATE_LOCAL(ptsOut);
+ if (Marked) xfree(Marked);
+ if (width) xfree(width);
+ if (ptsOut) xfree(ptsOut);
return;
}
@@ -236,9 +236,9 @@ miFillSppPoly(dst, pgc, count, ptsIn, xTrans, yTrans, xFtrans, yFtrans)
/* Finally, fill the spans we've collected */
(*pgc->ops->FillSpans)(dst, pgc,
ptsOut-FirstPoint, FirstPoint, FirstWidth, 1);
- DEALLOCATE_LOCAL(Marked);
- DEALLOCATE_LOCAL(FirstWidth);
- DEALLOCATE_LOCAL(FirstPoint);
+ xfree(Marked);
+ xfree(FirstWidth);
+ xfree(FirstPoint);
}