diff options
author | Matthieu Herrb <matthieu.herrb@laas.fr> | 2004-11-25 21:19:11 +0000 |
---|---|---|
committer | Matthieu Herrb <matthieu.herrb@laas.fr> | 2004-11-25 21:19:11 +0000 |
commit | 50986a34f231fbc7a4b62466bd89bd4ae4027d2e (patch) | |
tree | 99344977192a8fc0820713b562c704016da6554e /src/Attrib.c | |
parent | a983dafac59dcb425666a5a5556da4734e50c6c5 (diff) |
Fixes for CAN-2004-0914 (Thomas Biege).xprint_packagertest_20041125_basexprint_packagertest_20041125
Diffstat (limited to 'src/Attrib.c')
-rw-r--r-- | src/Attrib.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/src/Attrib.c b/src/Attrib.c index cf7081c..028c2cb 100644 --- a/src/Attrib.c +++ b/src/Attrib.c @@ -32,13 +32,15 @@ * Developed by Arnaud Le Hors * \*****************************************************************************/ +/* October 2004, source code review by Thomas Biege <thomas@suse.de> */ + #include "XpmI.h" /* 3.2 backward compatibility code */ LFUNC(CreateOldColorTable, int, (XpmColor *ct, unsigned int ncolors, XpmColor ***oldct)); -LFUNC(FreeOldColorTable, void, (XpmColor **colorTable, int ncolors)); +LFUNC(FreeOldColorTable, void, (XpmColor **colorTable, unsigned int ncolors)); /* * Create a colortable compatible with the old style colortable @@ -50,9 +52,9 @@ CreateOldColorTable(ct, ncolors, oldct) XpmColor ***oldct; { XpmColor **colorTable, **color; - int a; + unsigned int a; - if (ncolors >= SIZE_MAX / sizeof(XpmColor *)) + if (ncolors >= UINT_MAX / sizeof(XpmColor *)) return XpmNoMemory; colorTable = (XpmColor **) XpmMalloc(ncolors * sizeof(XpmColor *)); @@ -69,9 +71,9 @@ CreateOldColorTable(ct, ncolors, oldct) static void FreeOldColorTable(colorTable, ncolors) XpmColor **colorTable; - int ncolors; + unsigned int ncolors; { - int a, b; + unsigned int a, b; XpmColor **color; char **sptr; @@ -122,7 +124,7 @@ XpmFreeExtensions(extensions, nextensions) XpmExtension *ext; char **sptr; - if (extensions) { + if (extensions && nextensions > 0) { for (i = 0, ext = extensions; i < nextensions; i++, ext++) { if (ext->name) XpmFree(ext->name); |