]> git.tdb.fi Git - ttf2png.git/commitdiff
Improve type usage
authorMikko Rasa <tdb@tdb.fi>
Sat, 14 Apr 2018 12:01:41 +0000 (15:01 +0300)
committerMikko Rasa <tdb@tdb.fi>
Sat, 14 Apr 2018 12:52:51 +0000 (15:52 +0300)
Use unsigned for numbers for which negative values do not make sense.
Add a typedef for bool to better annotate the intended use of flag
variables.

ttf2png.c

index ae559b106ee14290666ccbf85a79565bd3ca4911..d9869bf173671caa4b6908f8f1cd357cb0e978ad 100644 (file)
--- a/ttf2png.c
+++ b/ttf2png.c
@@ -61,14 +61,16 @@ typedef struct sFont
        Image image;
 } Font;
 
+typedef int bool;
+
 void usage(void);
 int convert_numeric_option(char, int);
-void convert_code_point_range(char, int *, int *);
-void convert_size(char, int *, int *);
+void convert_code_point_range(char, unsigned *, unsigned *);
+void convert_size(char, unsigned *, unsigned *);
 unsigned round_to_pot(unsigned);
 void *alloc_image_data(size_t, size_t);
-int init_font(Font *, FT_Face, unsigned, unsigned, int);
-int render_grid(Font *, unsigned, unsigned, unsigned, int);
+int init_font(Font *, FT_Face, unsigned, unsigned, bool);
+int render_grid(Font *, unsigned, unsigned, unsigned, bool);
 int render_packed(Font *, unsigned, unsigned);
 int save_defs(const char *, const Font *);
 int save_png(const char *, const Image *, char);
@@ -78,19 +80,19 @@ char verbose = 0;
 int main(int argc, char **argv)
 {
        char *fn;
-       int begin = 0;
-       int end = 255;
-       int size = 10;
-       int cpl = 0;
-       int cellw = 0;
-       int cellh = 0;
-       char autohinter = 0;
-       char seq = 0;
-       char alpha = 0;
-       char invert = 0;
-       char pack = 0;
-       int margin = 0;
-       int padding = 1;
+       unsigned begin = 0;
+       unsigned end = 255;
+       unsigned size = 10;
+       unsigned cpl = 0;
+       unsigned cellw = 0;
+       unsigned cellh = 0;
+       bool autohinter = 0;
+       bool seq = 0;
+       bool alpha = 0;
+       bool invert = 0;
+       bool pack = 0;
+       unsigned margin = 0;
+       unsigned padding = 1;
 
        FT_Library freetype;
        FT_Face face;
@@ -279,8 +281,9 @@ int convert_numeric_option(char opt, int min_value)
        return value;
 }
 
-void convert_code_point_range(char opt, int *begin, int *end)
+void convert_code_point_range(char opt, unsigned *begin, unsigned *end)
 {
+       int value;
        char *ptr;
 
        if(!strcmp(optarg, "all"))
@@ -290,20 +293,25 @@ void convert_code_point_range(char opt, int *begin, int *end)
                return;
        }
 
-       *begin = strtol(optarg, &ptr, 0);
-       if(*begin>0 && *ptr==',')
+       value = strtol(optarg, &ptr, 0);
+       if(value>0 && *ptr==',')
        {
-               *end = strtol(ptr+1, &ptr, 0);
-               if(*end>0 && !*ptr)
+               *begin = value;
+               value = strtol(ptr+1, &ptr, 0);
+               if(value>0 && !*ptr)
+               {
+                       *end = value;
                        return;
+               }
        }
 
        printf("Invalid option argument in -%c %s\n", opt, optarg);
        exit(1);
 }
 
-void convert_size(char opt, int *width, int *height)
+void convert_size(char opt, unsigned *width, unsigned *height)
 {
+       int value;
        char *ptr;
 
        if(!strcmp(optarg, "auto"))
@@ -319,14 +327,18 @@ void convert_size(char opt, int *width, int *height)
                return;
        }
 
-       *width = strtol(optarg, &ptr, 0);
-       if(*width>0)
+       value = strtol(optarg, &ptr, 0);
+       if(value>0)
        {
+               *width = value;
                if(*ptr=='x')
                {
-                       *height = strtol(ptr+1, &ptr, 0);
-                       if(*height>0 && !*ptr)
+                       value = strtol(ptr+1, &ptr, 0);
+                       if(value>0 && !*ptr)
+                       {
+                               *height = value;
                                return;
+                       }
                }
                else if(!*ptr)
                {
@@ -375,7 +387,7 @@ void *alloc_image_data(size_t a, size_t b)
        return ptr;
 }
 
-int init_font(Font *font, FT_Face face, unsigned first, unsigned last, int autohinter)
+int init_font(Font *font, FT_Face face, unsigned first, unsigned last, bool autohinter)
 {
        unsigned i, j;
        unsigned size = 0;
@@ -490,7 +502,7 @@ int init_font(Font *font, FT_Face face, unsigned first, unsigned last, int autoh
        return 0;
 }
 
-int render_grid(Font *font, unsigned cellw, unsigned cellh, unsigned cpl, int seq)
+int render_grid(Font *font, unsigned cellw, unsigned cellh, unsigned cpl, bool seq)
 {
        unsigned i;
        int top = 0, bot = 0;