diff options
author | Christian Hesse <mail@eworm.de> | 2018-08-28 18:18:37 +0200 |
---|---|---|
committer | Christian Hesse <mail@eworm.de> | 2018-09-11 08:47:12 +0200 |
commit | edb3403f00f14ac5cc23b9ba3a122cb4ee8b81fa (patch) | |
tree | 191f8ece1600de05b6a551b48f70a7dc6256522d | |
parent | ui-log: ban strncpy() (diff) | |
download | cgit-pink-edb3403f00f14ac5cc23b9ba3a122cb4ee8b81fa.tar.gz cgit-pink-edb3403f00f14ac5cc23b9ba3a122cb4ee8b81fa.zip |
ui-patch: ban sprintf()
Git upstream bans sprintf() with commit: banned.h: mark sprintf() as banned cc8fdaee1eeaf05d8dd55ff11f111b815f673c58 Signed-off-by: Christian Hesse <mail@eworm.de>
-rw-r--r-- | ui-patch.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/ui-patch.c b/ui-patch.c index 8007a11..82f125b 100644 --- a/ui-patch.c +++ b/ui-patch.c @@ -11,13 +11,16 @@ #include "html.h" #include "ui-shared.h" +/* two commit hashes with two dots in between and termination */ +#define REV_RANGE_LEN 2 * GIT_MAX_HEXSZ + 3 + void cgit_print_patch(const char *new_rev, const char *old_rev, const char *prefix) { struct rev_info rev; struct commit *commit; struct object_id new_rev_oid, old_rev_oid; - char rev_range[2 * 40 + 3]; + char rev_range[REV_RANGE_LEN]; const char *rev_argv[] = { NULL, "--reverse", "--format=email", rev_range, "--", prefix, NULL }; int rev_argc = ARRAY_SIZE(rev_argv) - 1; char *patchname; @@ -60,7 +63,7 @@ void cgit_print_patch(const char *new_rev, const char *old_rev, if (is_null_oid(&old_rev_oid)) { memcpy(rev_range, oid_to_hex(&new_rev_oid), GIT_SHA1_HEXSZ + 1); } else { - sprintf(rev_range, "%s..%s", oid_to_hex(&old_rev_oid), + xsnprintf(rev_range, REV_RANGE_LEN, "%s..%s", oid_to_hex(&old_rev_oid), oid_to_hex(&new_rev_oid)); } |