diff options
Diffstat (limited to 'mkfontscale')
-rw-r--r-- | mkfontscale/configure.ac | 1 | ||||
-rw-r--r-- | mkfontscale/hash.c | 27 | ||||
-rw-r--r-- | mkfontscale/ident.c | 3 | ||||
-rw-r--r-- | mkfontscale/mkfontscale.c | 5 |
4 files changed, 17 insertions, 19 deletions
diff --git a/mkfontscale/configure.ac b/mkfontscale/configure.ac index 4340f99e1..4c7e599d5 100644 --- a/mkfontscale/configure.ac +++ b/mkfontscale/configure.ac @@ -27,6 +27,7 @@ AC_INIT([mkfontscale], [1.1.0], [mkfontscale]) AC_CONFIG_SRCDIR([Makefile.am]) AC_CONFIG_HEADERS([config.h]) +AC_USE_SYSTEM_EXTENSIONS # Initialize Automake AM_INIT_AUTOMAKE([foreign dist-bzip2]) diff --git a/mkfontscale/hash.c b/mkfontscale/hash.c index c2cf9caa3..3adfb6861 100644 --- a/mkfontscale/hash.c +++ b/mkfontscale/hash.c @@ -20,6 +20,8 @@ THE SOFTWARE. */ +#include "config.h" + #include <stdlib.h> #include <stdio.h> #include <string.h> @@ -41,14 +43,11 @@ hash(const char *string) } static void -strcpy_lwr(char *dst, const char *src) +str_tolower(char *s) { - while(1) { - *dst = tolower(*src); - if(*src == '\0') - break; - src++; - dst++; + while(*s != '\0') { + *s = tolower(*s); + s++; } } @@ -97,12 +96,11 @@ putHash(HashTablePtr table, char *key, char *value, int prio) for(bp = table[i]; bp; bp = bp->next) { if(strcasecmp(bp->key, key) == 0) { if(prio > bp->prio) { - keycopy = malloc(strlen(key) + 1); + keycopy = strdup(key); if(keycopy == NULL) goto fail; - strcpy_lwr(keycopy, key); - valuecopy = malloc(strlen(value) + 1); + str_tolower(keycopy); + valuecopy = strdup(value); if(valuecopy == NULL) goto fail; - strcpy(valuecopy, value); free(bp->key); free(bp->value); bp->key = keycopy; @@ -111,14 +109,13 @@ putHash(HashTablePtr table, char *key, char *value, int prio) return 1; } } - keycopy = malloc(strlen(key) + 1); + keycopy = strdup(key); if(keycopy == NULL) goto fail; - strcpy_lwr(keycopy, key); - valuecopy = malloc(strlen(value) + 1); + str_tolower(keycopy); + valuecopy = strdup(value); if(valuecopy == NULL) goto fail; - strcpy(valuecopy, value); bp = malloc(sizeof(HashBucketRec)); if(bp == NULL) goto fail; diff --git a/mkfontscale/ident.c b/mkfontscale/ident.c index bf544832c..41212575e 100644 --- a/mkfontscale/ident.c +++ b/mkfontscale/ident.c @@ -315,10 +315,9 @@ pcfIdentify(fontFile *f, char **name) if(i >= nprops) goto fail; - s = malloc(strlen(strings + props[i].value) + 1); + s = strdup(strings + props[i].value); if(s == NULL) goto fail; - strcpy(s, strings + props[i].value); *name = s; free(strings); free(props); diff --git a/mkfontscale/mkfontscale.c b/mkfontscale/mkfontscale.c index 01e982bf0..e605cf9bd 100644 --- a/mkfontscale/mkfontscale.c +++ b/mkfontscale/mkfontscale.c @@ -20,6 +20,8 @@ THE SOFTWARE. */ +#include "config.h" + #include <stdio.h> #include <stdlib.h> #include <string.h> @@ -898,10 +900,9 @@ doDirectory(const char *dirname_given, int numEncodings, ListPtr encodingsToDo) BDF_PropertyRec prop; rc = FT_Get_BDF_Property(face, "FONT", &prop); if(rc == 0 && prop.type == BDF_PROPERTY_TYPE_ATOM) { - xlfd_name = malloc(strlen(prop.u.atom) + 1); + xlfd_name = strdup(prop.u.atom); if(xlfd_name == NULL) goto done; - strcpy(xlfd_name, prop.u.atom); } } } |