X-Git-Url: https://gitweb.ps.run/ps-cgit/blobdiff_plain/195742572681d6c2583de392131d1be86ef52f48..3cb5d86dc68bab4883bf5a7cbc90f3e266237355:/ui-diff.c diff --git a/ui-diff.c b/ui-diff.c index c6bad63..8b38209 100644 --- a/ui-diff.c +++ b/ui-diff.c @@ -7,6 +7,7 @@ */ #include "cgit.h" +#include "ui-diff.h" #include "html.h" #include "ui-shared.h" #include "ui-ssdiff.h" @@ -166,8 +167,9 @@ static void inspect_filepair(struct diff_filepair *pair) total_rems += lines_removed; } -void cgit_print_diffstat(const unsigned char *old_sha1, - const unsigned char *new_sha1, const char *prefix) +static void cgit_print_diffstat(const unsigned char *old_sha1, + const unsigned char *new_sha1, + const char *prefix) { int i; @@ -184,7 +186,7 @@ void cgit_print_diffstat(const unsigned char *old_sha1, max_changes = 0; cgit_diff_tree(old_sha1, new_sha1, inspect_filepair, prefix, ctx.qry.ignorews); - for(i = 0; i"); html("
"); @@ -229,11 +231,6 @@ static void header(unsigned char *sha1, char *path1, int mode1, html(" b/"); html_txt(path2); - if (is_null_sha1(sha1)) - path1 = "dev/null"; - if (is_null_sha1(sha2)) - path2 = "dev/null"; - if (mode1 == 0) htmlf("
new file mode %.6o", mode2); @@ -251,13 +248,21 @@ static void header(unsigned char *sha1, char *path1, int mode1, if (mode2 != mode1) htmlf("..%.6o", mode2); } - html("
--- a/"); + if (is_null_sha1(sha1)) { + path1 = "dev/null"; + html("
--- /"); + } else + html("
--- a/"); if (mode1 != 0) cgit_tree_link(path1, NULL, NULL, ctx.qry.head, sha1_to_hex(old_rev_sha1), path1); else html_txt(path1); - html("
+++ b/"); + if (is_null_sha1(sha2)) { + path2 = "dev/null"; + html("
+++ /"); + } else + html("
+++ b/"); if (mode2 != 0) cgit_tree_link(path2, NULL, NULL, ctx.qry.head, sha1_to_hex(new_rev_sha1), path2); @@ -364,12 +369,12 @@ void cgit_print_diff(const char *new_rev, const char *old_rev, get_sha1(new_rev, new_rev_sha1); type = sha1_object_info(new_rev_sha1, &size); if (type == OBJ_BAD) { - cgit_print_error(fmt("Bad object name: %s", new_rev)); + cgit_print_error("Bad object name: %s", new_rev); return; } commit = lookup_commit_reference(new_rev_sha1); if (!commit || parse_commit(commit)) { - cgit_print_error(fmt("Bad commit: %s", sha1_to_hex(new_rev_sha1))); + cgit_print_error("Bad commit: %s", sha1_to_hex(new_rev_sha1)); return; } @@ -383,12 +388,12 @@ void cgit_print_diff(const char *new_rev, const char *old_rev, if (!is_null_sha1(old_rev_sha1)) { type = sha1_object_info(old_rev_sha1, &size); if (type == OBJ_BAD) { - cgit_print_error(fmt("Bad object name: %s", sha1_to_hex(old_rev_sha1))); + cgit_print_error("Bad object name: %s", sha1_to_hex(old_rev_sha1)); return; } commit2 = lookup_commit_reference(old_rev_sha1); if (!commit2 || parse_commit(commit2)) { - cgit_print_error(fmt("Bad commit: %s", sha1_to_hex(old_rev_sha1))); + cgit_print_error("Bad commit: %s", sha1_to_hex(old_rev_sha1)); return; } }