From mboxrd@z Thu Jan 1 00:00:00 1970 From: john at keeping.me.uk (John Keeping) Date: Sun, 5 Oct 2014 10:59:05 +0100 Subject: [PATCH 4/4] ui-diff: add "stat only" diff type In-Reply-To: References: Message-ID: 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 Signed-off-by: John Keeping --- cgit.h | 2 +- ui-diff.c | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/cgit.h b/cgit.h index 0eb5ed5..0c1585d 100644 --- a/cgit.h +++ b/cgit.h @@ -53,7 +53,7 @@ typedef void (*filepair_fn)(struct diff_filepair *pair); typedef void (*linediff_fn)(char *line, int len); typedef enum { - DIFF_UNIFIED, DIFF_SSDIFF + DIFF_UNIFIED, DIFF_SSDIFF, DIFF_STATONLY } diff_type; typedef enum { 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(""); html(""); html(""); @@ -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(""); } else { -- 2.1.0.374.g390713e