diff options
| author | Mark Lodato <lodatom@gmail.com> | 2010-09-04 11:30:18 -0400 | 
|---|---|---|
| committer | Mark Lodato <lodatom@gmail.com> | 2010-09-04 11:35:38 -0400 | 
| commit | e4ddc8f72b5a7d8c55a6c2042c7b7f945ba4b1a2 (patch) | |
| tree | 2ade0bb45e15ad5466ca4d3433201477f0c9214e /ui-stats.c | |
| parent | use __attribute__ to catch printf format mistakes (diff) | |
| download | cgit-e4ddc8f72b5a7d8c55a6c2042c7b7f945ba4b1a2.tar.gz cgit-e4ddc8f72b5a7d8c55a6c2042c7b7f945ba4b1a2.tar.bz2 cgit-e4ddc8f72b5a7d8c55a6c2042c7b7f945ba4b1a2.zip | |
fix errors in printf-style format strings
There were many places where the arguments to a printf-like function did
not match the format string.  Mostly, these were a missing 'l' flag, but
there were three exceptions:
- In ui-stats.c, a size_t argument must be printed.  C99 has the "%zu"
  flag for this purpose, but not all compilers support this.  Therefore,
  we mimic what git does - use a NO_C99_FORMAT Makefile variable.
- In ui-stats.c, cgit_print_error() was called with a pointer instead of
  a character.
- In ui-log.c, the "columns" argument was never used.
Signed-off-by: Mark Lodato <lodatom@gmail.com>
Diffstat (limited to '')
| -rw-r--r-- | ui-stats.c | 18 | 
1 files changed, 12 insertions, 6 deletions
| @@ -5,6 +5,12 @@  #include "ui-shared.h"  #include "ui-stats.h" +#ifdef NO_C99_FORMAT +#define SZ_FMT "%u" +#else +#define SZ_FMT "%zu" +#endif +  #define MONTHS 6  struct authorstat { @@ -283,10 +289,10 @@ void print_combined_authorrow(struct string_list *authors, int from, int to,  			if (date)  				subtotal += (size_t)date->util;  		} -		htmlf("<td class='%s'>%d</td>", centerclass, subtotal); +		htmlf("<td class='%s'>%ld</td>", centerclass, subtotal);  		total += subtotal;  	} -	htmlf("<td class='%s'>%d</td></tr>", rightclass, total); +	htmlf("<td class='%s'>%ld</td></tr>", rightclass, total);  }  void print_authors(struct string_list *authors, int top, @@ -335,16 +341,16 @@ void print_authors(struct string_list *authors, int top,  			if (!date)  				html("<td>0</td>");  			else { -				htmlf("<td>%d</td>", date->util); +				htmlf("<td>"SZ_FMT"</td>", (size_t)date->util);  				total += (size_t)date->util;  			}  		} -		htmlf("<td class='sum'>%d</td></tr>", total); +		htmlf("<td class='sum'>%ld</td></tr>", total);  	}  	if (top < authors->nr)  		print_combined_authorrow(authors, top, authors->nr - 1, -			"Others (%d)", "left", "", "sum", period); +			"Others (%ld)", "left", "", "sum", period);  	print_combined_authorrow(authors, 0, authors->nr - 1, "Total",  		"total", "sum", "sum", period); @@ -367,7 +373,7 @@ void cgit_show_stats(struct cgit_context *ctx)  	i = cgit_find_stats_period(code, &period);  	if (!i) { -		cgit_print_error(fmt("Unknown statistics type: %c", code)); +		cgit_print_error(fmt("Unknown statistics type: %c", code[0]));  		return;  	}  	if (i > ctx->repo->max_stats) { | 
