use Fcntl ':mode';
my $cgi = new CGI;
-my $version = "232";
+my $version = "234";
my $my_url = $cgi->url();
my $my_uri = $cgi->url(-absolute => 1);
my $rss_link = "";
}
}
+sub format_log_line_html {
+ my $line = shift;
+
+ $line = escapeHTML($line);
+ $line =~ s/ / /g;
+ if ($line =~ m/([0-9a-fA-F]{40})/) {
+ my $hash_text = $1;
+ if (git_get_type($hash_text) eq "commit") {
+ my $link = $cgi->a({-class => "list", -href => "$my_uri?p=$project;a=commit;h=$hash_text"}, $hash_text);
+ $line =~ s/$hash_text/$link/;
+ }
+ }
+ return $line;
+}
+
sub date_str {
my $epoch = shift;
my $tz = shift || "-0000";
} else {
$empty = 0;
}
- print escapeHTML($line) . "<br/>\n";
+ print format_log_line_html($line) . "<br/>\n";
}
if (!$empty) {
print "<br/>\n";
print "<span style=\"color: #888888\">" . escapeHTML($line) . "</span><br/>\n";
} else {
$signed = 0;
- print escapeHTML($line) . "<br/>\n";
+ print format_log_line_html($line) . "<br/>\n";
}
}
print "</div>\n";
print "<tr class=\"light\">\n";
}
$alternate ^= 1;
- if ($status eq "N") {
+ if ($status eq "A") {
my $mode_chng = "";
if (S_ISREG(oct $to_mode)) {
$mode_chng = sprintf(" with mode: %04o", (oct $to_mode) & 0777);
} else {
$empty = 0;
}
- print escapeHTML($line) . "<br/>\n";
+ print format_log_line_html($line) . "<br/>\n";
}
print "<br/>\n";
foreach my $line (@difftree) {
my $to_id = $4;
my $status = $5;
my $file = $6;
- if ($status eq "N") {
+ if ($status eq "A") {
print "<div class=\"diff_info\">" . file_type($to_mode) . ":" .
$cgi->a({-href => "$my_uri?p=$project;a=blob;h=$to_id;hb=$hash;f=$file"}, $to_id) . "(new)" .
"</div>\n";
my $to_id = $4;
my $status = $5;
my $file = $6;
- if ($status eq "N") {
+ if ($status eq "A") {
git_diff_print(undef, "/dev/null", $to_id, "b/$file", "plain");
} elsif ($status eq "D") {
git_diff_print($from_id, "a/$file", undef, "/dev/null", "plain");