about summary refs log tree commit
diff options
context:
space:
mode:
-rw-r--r--ui-diff.c17
-rw-r--r--ui-patch.c19
2 files changed, 22 insertions, 14 deletions
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);
diff --git a/ui-patch.c b/ui-patch.c
index ca008f3..79bc509 100644
--- a/ui-patch.c
+++ b/ui-patch.c
@@ -28,11 +28,6 @@ static void header(unsigned char *sha1, char *path1, int mode1,
         subproject = (S_ISGITLINK(mode1) || S_ISGITLINK(mode2));
         htmlf("diff --git a/%s b/%s\n", path1, 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\n", mode2);
 
@@ -50,8 +45,18 @@ static void header(unsigned char *sha1, char *path1, int mode1,
                         if (mode2 != mode1)
                                 htmlf("..%.6o", mode2);
                 }
-                htmlf("\n--- a/%s\n", path1);
-                htmlf("+++ b/%s\n", path2);
+
+                if (is_null_sha1(sha1)) {
+                        path1 = "dev/null";
+                        htmlf("\n--- /%s\n", path1);
+                } else
+                        htmlf("\n--- a/%s\n", path1);
+
+                if (is_null_sha1(sha2)) {
+                        path2 = "dev/null";
+                        htmlf("+++ /%s\n", path2);
+                } else
+                        htmlf("+++ b/%s\n", path2);
         }
 }