Fixed side-by-side diff bugs related to binary diff and more.

The fixed bugs:

 * "Binary files differ" did not show up either in unidiff or
   side-by-side-diff.
 * Subproject diffs did not work for side-by-side diffs.
 * The ssdiff link on diff pages did not conserve the path.

Signed-off-by: Ragnar Ouchterlony <ragnar@lysator.liu.se>
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
这个提交包含在:
Ragnar Ouchterlony
2009-09-16 18:56:26 +02:00
提交者 Lars Hjemli
父节点 207cc34711
当前提交 4a198e4b8e
共有 2 个文件被更改,包括 16 次插入6 次删除

查看文件

@ -108,6 +108,8 @@ static void print_ssdiff_line(char *class, int old_line_no, char *old_line,
if (old_line_no > 0)
htmlf("<td class='lineno'>%d</td><td class='%s'>",
old_line_no, class);
else if (old_line)
htmlf("<td class='lineno'></td><td class='%s'>", class);
else
htmlf("<td class='lineno'></td><td class='%s_dark'>", class);
@ -122,6 +124,8 @@ static void print_ssdiff_line(char *class, int old_line_no, char *old_line,
if (new_line_no > 0)
htmlf("<td class='lineno'>%d</td><td class='%s'>",
new_line_no, class);
else if (new_line)
htmlf("<td class='lineno'></td><td class='%s'>", class);
else
htmlf("<td class='lineno'></td><td class='%s_dark'>", class);
@ -251,8 +255,8 @@ void cgit_ssdiff_line_cb(char *line, int len)
void cgit_ssdiff_header_begin()
{
current_old_line = 0;
current_new_line = 0;
current_old_line = -1;
current_new_line = -1;
html("<tr><td class='space' colspan='4'><div></div></td></tr>");
html("<tr><td class='head' colspan='4'>");
}