diff options
author | Jason A. Donenfeld <Jason@zx2c4.com> | 2016-02-08 14:35:47 +0100 |
---|---|---|
committer | Jason A. Donenfeld <Jason@zx2c4.com> | 2016-02-08 14:35:47 +0100 |
commit | a8b9ef8c1c68fbb9c89db2d8c12dca38c15e2bfd (patch) | |
tree | 98b544c76efa726e4059bf7f3dd1e8d815633def /ui-stats.c | |
parent | 85ec9f0211a0c83d6cca744e6e40d73daf4050fc (diff) | |
download | cgit-a8b9ef8c1c68fbb9c89db2d8c12dca38c15e2bfd.tar.gz cgit-a8b9ef8c1c68fbb9c89db2d8c12dca38c15e2bfd.tar.xz |
ui-stats: if we're going to abuse void*, do it safely
Diffstat (limited to 'ui-stats.c')
-rw-r--r-- | ui-stats.c | 17 |
1 files changed, 7 insertions, 10 deletions
@@ -3,12 +3,6 @@ #include "html.h" #include "ui-shared.h" -#ifdef NO_C99_FORMAT -#define SZ_FMT "%u" -#else -#define SZ_FMT "%zu" -#endif - struct authorstat { long total; struct string_list list; @@ -174,6 +168,7 @@ static void add_commit(struct string_list *authors, struct commit *commit, char *tmp; struct tm *date; time_t t; + uintptr_t *counter; info = cgit_parse_commit(commit); tmp = xstrdup(info->author); @@ -191,7 +186,9 @@ static void add_commit(struct string_list *authors, struct commit *commit, item = string_list_insert(items, tmp); if (item->util) free(tmp); - item->util++; + counter = (uintptr_t *)&item->util; + (*counter)++; + authorstat->total++; cgit_free_commitinfo(info); } @@ -286,7 +283,7 @@ static void print_combined_authorrow(struct string_list *authors, int from, items = &authorstat->list; date = string_list_lookup(items, tmp); if (date) - subtotal += (size_t)date->util; + subtotal += (uintptr_t)date->util; } htmlf("<td class='%s'>%ld</td>", centerclass, subtotal); total += subtotal; @@ -340,8 +337,8 @@ static void print_authors(struct string_list *authors, int top, if (!date) html("<td>0</td>"); else { - htmlf("<td>"SZ_FMT"</td>", (size_t)date->util); - total += (size_t)date->util; + htmlf("<td>%lu</td>", (uintptr_t)date->util); + total += (uintptr_t)date->util; } } htmlf("<td class='sum'>%ld</td></tr>", total); |