Website Summary Files Commits Branches @commit @diff @stats
path: root / ui-diff.c
diff options
context:
space:
mode:
Commit62a40c78fed772e795eca8d4e7d6f6ead4d9a125 (patch)
Author
 Michael Halstead <michael@yoctoproject.org>
2012-11-14 12:41:01 -0800
Committer
 Jason A. Donenfeld <Jason@zx2c4.com>
2012-11-15 00:56:20 +0100
Files03d81c7b21c66594d7380f118fdf2711a248bf6d /ui-diff.c
cgit-62a40c78fed772e795eca8d4e7d6f6ead4d9a125.tar
cgit-62a40c78fed772e795eca8d4e7d6f6ead4d9a125.tar.gz
cgit-62a40c78fed772e795eca8d4e7d6f6ead4d9a125.zip
Parent633a66c8226286d4559e72f0dce23586d617faff (diff)
Format git diff headers correctly when adding or removing files.
Copying the output of cgit and using it in patches now works when adding files to or removing files from the repository. This is helpful for people who use cgit in their patch workflow.
1 files changed, 10 insertions, 7 deletions
-rw-r--r--ui-diff.c17
diff --git a/ui-diff.c b/ui-diff.c
index c6bad63..3d46da2 100644
--- a/ui-diff.c
+++ b/ui-diff.c
@@ -229,11 +229,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("<br/>new file mode %.6o", mode2);
@@ -251,13 +246,21 @@ static void header(unsigned char *sha1, char *path1, int mode1,
if (mode2 != mode1)
htmlf("..%.6o", mode2);
}
- html("<br/>--- a/");
+ if (is_null_sha1(sha1)) {
+ path1 = "dev/null";
+ html("<br/>--- /");
+ } else
+ html("<br/>--- 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("<br/>+++ b/");
+ if (is_null_sha1(sha2)) {
+ path2 = "dev/null";
+ html("<br/>+++ /");
+ } else
+ html("<br/>+++ b/");
if (mode2 != 0)
cgit_tree_link(path2, NULL, NULL, ctx.qry.head,
sha1_to_hex(new_rev_sha1), path2);