diff options
Diffstat (limited to 'lib/libXfont/src')
-rw-r--r-- | lib/libXfont/src/fontfile/fontdir.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/lib/libXfont/src/fontfile/fontdir.c b/lib/libXfont/src/fontfile/fontdir.c index aae1f2e25..cf68a547c 100644 --- a/lib/libXfont/src/fontfile/fontdir.c +++ b/lib/libXfont/src/fontfile/fontdir.c @@ -38,9 +38,17 @@ in this Software without prior written authorization from The Open Group. #include <X11/fonts/fntfilst.h> #include <X11/keysym.h> +#if HAVE_STDINT_H +#include <stdint.h> +#elif !defined(INT32_MAX) +#define INT32_MAX 0x7fffffff +#endif + Bool FontFileInitTable (FontTablePtr table, int size) { + if (size < 0 || (size > INT32_MAX/sizeof(FontEntryRec))) + return FALSE; if (size) { table->entries = (FontEntryPtr) xalloc(sizeof(FontEntryRec) * size); |