From 2dcdf7b8850b6435cd6339f6c77a2e83f52b76f3 Mon Sep 17 00:00:00 2001 From: giraffedata Date: Tue, 2 Oct 2018 15:10:58 +0000 Subject: cleanup git-svn-id: http://svn.code.sf.net/p/netpbm/code/trunk@3372 9d0c8265-081b-0410-96cb-a4ca84ce46f8 --- lib/libpbmfont2.c | 50 ++++++++++++++++++++++++++++++-------------------- 1 file changed, 30 insertions(+), 20 deletions(-) (limited to 'lib/libpbmfont2.c') diff --git a/lib/libpbmfont2.c b/lib/libpbmfont2.c index e7189921..74fcd724 100644 --- a/lib/libpbmfont2.c +++ b/lib/libpbmfont2.c @@ -653,39 +653,49 @@ static void processBdfFontNameLine(Readline * const readlineP, struct font2 * const font2P) { - if (font2P->name != NULL) + if (font2P->name) /* We've already processed a FONT line */ pm_error("Multiple FONT lines in BDF font file"); + else { + char * buffer; - font2P->name = malloc (MAXBDFLINE+1); - if (font2P->name == NULL) - pm_error("No memory for font name"); + MALLOCARRAY(buffer, MAXBDFLINE+1); - if (readlineP->wordCt == 1) - strcpy(font2P->name, "(no name)"); + if (!buffer) + pm_error("Failed to get memory for %u-character font name buffer", + MAXBDFLINE+1); - else { - unsigned int tokenCt; + if (readlineP->wordCt == 1) + strcpy(buffer, "(no name)"); + + else { + unsigned int tokenCt; - font2P->name[0] ='\0'; + buffer[0] ='\0'; - for (tokenCt=1; - tokenCt < ARRAY_SIZE(readlineP->arg) && - readlineP->arg[tokenCt] != NULL; ++tokenCt) { - strcat(font2P->name, " "); - strcat(font2P->name, readlineP->arg[tokenCt]); + for (tokenCt=1; + tokenCt < ARRAY_SIZE(readlineP->arg) && + readlineP->arg[tokenCt] != NULL; ++tokenCt) { + strcat(buffer, " "); + strcat(buffer, readlineP->arg[tokenCt]); + } } + font2P->name = buffer; } } + static void -loadCharsetString(const char * const registry, - const char * const encoding, - char ** const string) { +loadCharsetString(const char * const registry, + const char * const encoding, + const char ** const charsetStringP) { + char * dest; unsigned int inCt, outCt; - char * const dest = malloc (strlen(registry) + strlen(encoding) + 1); - if (dest == NULL) + + dest = malloc(strlen(registry) + strlen(encoding) + 1); + + if (!dest) pm_error("no memory to load CHARSET_REGISTRY and CHARSET_ENCODING " "from BDF file"); @@ -703,7 +713,7 @@ loadCharsetString(const char * const registry, } dest[outCt] = '\0'; - *string = dest; + *charsetStringP = dest; } -- cgit 1.4.1