diff options
author | Jamey Sharp <jamey@minilop.net> | 2010-05-08 09:41:46 -0700 |
---|---|---|
committer | Jamey Sharp <jamey@minilop.net> | 2010-05-10 11:16:33 -0700 |
commit | 4080cd42fde8b4c693eab7557581af2622479109 (patch) | |
tree | 4c45ae12d5b687264dbcd0fd61d27718ca860f47 | |
parent | ccdaecc5471cc2d56b1702eeed4280bb4d58c515 (diff) |
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 <jamey@minilop.net>
Reviewed-by: Adam Jackson <ajax@redhat.com>
-rw-r--r-- | mi/mipolypnt.c | 5 |
1 files 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; |