aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLukas Fleischer <lfleischer@lfos.de>2016-11-24 20:14:54 +0100
committerLukas Fleischer <lfleischer@lfos.de>2016-11-25 08:28:55 +0100
commit62c2ce7a6d61b8ca2f6ab7d30f277c0163625792 (patch)
tree4dbb0d165039145fed30082b2adaedfe40cdcdb3
parent5ccd96525835b314c8615738d533d9d0b54a630c (diff)
Fix crash when using path limitlf/for-jason
The array passed to setup_revisions() must be NULL-terminated. Fixes a regression introduced in 455b598 (ui-patch.c: Use log_tree_commit() to generate diffs, 2013-08-20). Reported-by: Florian Pritz <bluewind@xinu.at> Signed-off-by: Lukas Fleischer <lfleischer@lfos.de>
-rw-r--r--ui-patch.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/ui-patch.c b/ui-patch.c
index ec7f352..047e2f9 100644
--- a/ui-patch.c
+++ b/ui-patch.c
@@ -18,8 +18,8 @@ void cgit_print_patch(const char *new_rev, const char *old_rev,
struct commit *commit;
struct object_id new_rev_oid, old_rev_oid;
char rev_range[2 * 40 + 3];
- const char *rev_argv[] = { NULL, "--reverse", "--format=email", rev_range, "--", prefix };
- int rev_argc = ARRAY_SIZE(rev_argv);
+ const char *rev_argv[] = { NULL, "--reverse", "--format=email", rev_range, "--", prefix, NULL };
+ int rev_argc = ARRAY_SIZE(rev_argv) - 1;
char *patchname;
if (!prefix)
@@ -85,8 +85,7 @@ void cgit_print_patch(const char *new_rev, const char *old_rev,
DIFF_FORMAT_PATCH | DIFF_FORMAT_SUMMARY;
if (prefix)
rev.diffopt.stat_sep = fmt("(limited to '%s')\n\n", prefix);
- setup_revisions(ARRAY_SIZE(rev_argv), rev_argv, &rev,
- NULL);
+ setup_revisions(rev_argc, rev_argv, &rev, NULL);
prepare_revision_walk(&rev);
while ((commit = get_revision(&rev)) != NULL) {