From 4080cd42fde8b4c693eab7557581af2622479109 Mon Sep 17 00:00:00 2001 From: Jamey Sharp Date: Sat, 8 May 2010 09:41:46 -0700 Subject: [PATCH] miPolyPoint bugfix: Check memory allocation before changing the GC. miPolyPoint ought to leave the GC unchanged even if it fails. ajax says: > We have a new winner for the oldest-bug competition! It's actually > been like that since X11R1: > > -rw-r--r--. 1 ajax ajax 2817 1987-09-12 01:20 ddx/mi/mipolypnt.c Signed-off-by: Jamey Sharp Reviewed-by: Adam Jackson --- mi/mipolypnt.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/mi/mipolypnt.c b/mi/mipolypnt.c index 5d6243ab0..12771ee4e 100644 --- a/mi/mipolypnt.c +++ b/mi/mipolypnt.c @@ -73,6 +73,9 @@ miPolyPoint( int i; xPoint *ppt; + if(!(pwidthInit = xalloc(npt * sizeof(int)))) + return; + /* make pointlist origin relative */ if (mode == CoordModePrevious) { @@ -107,8 +110,6 @@ miPolyPoint( DoChangeGC(pGC, GCFillStyle, &fsNew, 0); ValidateGC(pDrawable, pGC); } - if(!(pwidthInit = xalloc(npt * sizeof(int)))) - return; pwidth = pwidthInit; for(i = 0; i < npt; i++) *pwidth++ = 1;