aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar Mark Lodato <lodatom@gmail.com>2010-09-05 00:09:57 (JST)
committerGravatar Mark Lodato <lodatom@gmail.com>2010-09-05 00:11:40 (JST)
commita4c58d92bfee0cf2e35ab1c5e828a6d790108a69 (patch)
tree4b6073081a04216525facaf06db956b4a08dffac
parentbf8293d3196d49d6c4a48b254a04415183ca2762 (diff)
downloadcgit-a4c58d92bfee0cf2e35ab1c5e828a6d790108a69.zip
cgit-a4c58d92bfee0cf2e35ab1c5e828a6d790108a69.tar.gz
use __attribute__ to catch printf format mistakes
Use "__attribute__((format (printf,N,M)))", as is done in git, do catch mistakes in printf-style format strings. Signed-off-by: Mark Lodato <lodatom@gmail.com>
-rw-r--r--cache.h1
-rw-r--r--cgit.h1
-rw-r--r--html.h3
3 files changed, 5 insertions, 0 deletions
diff --git a/cache.h b/cache.h
index ac9276b..5cfdb4f 100644
--- a/cache.h
+++ b/cache.h
@@ -30,6 +30,7 @@ extern int cache_process(int size, const char *path, const char *key, int ttl,
30extern int cache_ls(const char *path); 30extern int cache_ls(const char *path);
31 31
32/* Print a message to stdout */ 32/* Print a message to stdout */
33__attribute__((format (printf,1,2)))
33extern void cache_log(const char *format, ...); 34extern void cache_log(const char *format, ...);
34 35
35extern unsigned long hash_str(const char *str); 36extern unsigned long hash_str(const char *str);
diff --git a/cgit.h b/cgit.h
index 4090cd4..8f84281 100644
--- a/cgit.h
+++ b/cgit.h
@@ -293,6 +293,7 @@ extern void cgit_diff_tree(const unsigned char *old_sha1,
293 293
294extern void cgit_diff_commit(struct commit *commit, filepair_fn fn); 294extern void cgit_diff_commit(struct commit *commit, filepair_fn fn);
295 295
296__attribute__((format (printf,1,2)))
296extern char *fmt(const char *format,...); 297extern char *fmt(const char *format,...);
297 298
298extern struct commitinfo *cgit_parse_commit(struct commit *commit); 299extern struct commitinfo *cgit_parse_commit(struct commit *commit);
diff --git a/html.h b/html.h
index 16d55ec..1135fb8 100644
--- a/html.h
+++ b/html.h
@@ -5,7 +5,10 @@ extern int htmlfd;
5 5
6extern void html_raw(const char *txt, size_t size); 6extern void html_raw(const char *txt, size_t size);
7extern void html(const char *txt); 7extern void html(const char *txt);
8
9__attribute__((format (printf,1,2)))
8extern void htmlf(const char *format,...); 10extern void htmlf(const char *format,...);
11
9extern void html_status(int code, const char *msg, int more_headers); 12extern void html_status(int code, const char *msg, int more_headers);
10extern void html_txt(const char *txt); 13extern void html_txt(const char *txt);
11extern void html_ntxt(int len, const char *txt); 14extern void html_ntxt(int len, const char *txt);