aboutsummaryrefslogtreecommitdiffstats
path: root/ui-diff.c
diff options
context:
space:
mode:
authorJohn Keeping <john@keeping.me.uk>2014-10-05 10:59:05 +0100
committerLukas Fleischer <cgit@cryptocrack.de>2014-12-13 12:38:42 +0100
commitddfaef6bb28e697491b25bff5a7b260d44ce6ccf (patch)
tree53a8bfe75e9f8250131fb2b38a346731ba5581cd /ui-diff.c
parent1830271c5958526425f92ae2b369646b54e3c370 (diff)
ui-diff: add "stat only" diff type
This prints the diffstat but stops before printing (or generating) any of the body of the diff. No cgitrc option is added here so that we can wait to see how useful this is before letting people set it as the default. Suggested-by: Konstantin Ryabitsev <mricon@kernel.org> Signed-off-by: John Keeping <john@keeping.me.uk>
Diffstat (limited to 'ui-diff.c')
-rw-r--r--ui-diff.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/ui-diff.c b/ui-diff.c
index a4ade4d..bf2ec57 100644
--- a/ui-diff.c
+++ b/ui-diff.c
@@ -349,6 +349,7 @@ void cgit_print_diff_ctrls()
curr = ctx.qry.has_difftype ? ctx.qry.difftype : ctx.cfg.difftype;
html_intoption(0, "unified", curr);
html_intoption(1, "ssdiff", curr);
+ html_intoption(2, "stat only", curr);
html("</select></td></tr>");
html("<tr><td/><td class='ctrl'>");
html("<noscript><input type='submit' value='reload'/></noscript>");
@@ -429,6 +430,9 @@ void cgit_print_diff(const char *new_rev, const char *old_rev,
cgit_print_diffstat(old_rev_sha1, new_rev_sha1, prefix);
+ if (difftype == DIFF_STATONLY)
+ return;
+
if (use_ssdiff) {
html("<table summary='ssdiff' class='ssdiff'>");
} else {