X-Git-Url: https://git.ladys.computer/Gitweb/blobdiff_plain/663716643f44824af2a0a04eff9776603a617d2ae0ec802d95a93f1693404441..3d2d863f75be984b8d788025d50f5d36fe89bc63c3799291af41f625f2a3b1ac:/gitweb.perl
diff --git a/gitweb.perl b/gitweb.perl
index 8e98e3b..daab942 100755
--- a/gitweb.perl
+++ b/gitweb.perl
@@ -1405,19 +1405,32 @@ sub git_print_page_path {
if (!defined $name) {
print "
/
\n";
- } elsif (defined $type && $type eq 'blob') {
+ } else {
+ my @dirname = split '/', $name;
+ my $basename = pop @dirname;
+ my $fullname = '';
+
print "";
- if (defined $hb) {
+ foreach my $dir (@dirname) {
+ $fullname .= $dir . '/';
+ print $cgi->a({-href => href(action=>"tree", file_name=>$fullname,
+ hash_base=>$hb),
+ -title => $fullname}, esc_html($dir));
+ print "/";
+ }
+ if (defined $type && $type eq 'blob') {
print $cgi->a({-href => href(action=>"blob_plain", file_name=>$file_name,
- hash_base=>$hb)},
- esc_html($name));
+ hash_base=>$hb),
+ -title => $name}, esc_html($basename));
+ } elsif (defined $type && $type eq 'tree') {
+ print $cgi->a({-href => href(action=>"tree", file_name=>$file_name,
+ hash_base=>$hb),
+ -title => $name}, esc_html($basename));
+ print "/";
} else {
- print $cgi->a({-href => href(action=>"blob_plain", file_name=>$file_name)},
- esc_html($name));
+ print esc_html($basename);
}
print "
\n";
- } else {
- print "" . esc_html($name) . "
\n";
}
}
@@ -1592,7 +1605,7 @@ sub git_difftree_body {
$cgi->a({-href => href(action=>"blob", hash=>$diff{'to_id'},
hash_base=>$hash, file_name=>$diff{'file'})},
"blob");
- if ($action == "commitdiff") {
+ if ($action eq 'commitdiff') {
# link to patch
$patchno++;
print " | " .
@@ -1613,7 +1626,7 @@ sub git_difftree_body {
hash_base=>$parent, file_name=>$diff{'file'})},
"blob") .
" | ";
- if ($action == "commitdiff") {
+ if ($action eq 'commitdiff') {
# link to patch
$patchno++;
print " | " .
@@ -1659,7 +1672,7 @@ sub git_difftree_body {
hash_base=>$hash, file_name=>$diff{'file'})},
"blob");
if ($diff{'to_id'} ne $diff{'from_id'}) { # modified
- if ($action == "commitdiff") {
+ if ($action eq 'commitdiff') {
# link to patch
$patchno++;
print " | " .
@@ -1701,7 +1714,7 @@ sub git_difftree_body {
hash=>$diff{'to_id'}, file_name=>$diff{'to_file'})},
"blob");
if ($diff{'to_id'} ne $diff{'from_id'}) {
- if ($action == "commitdiff") {
+ if ($action eq 'commitdiff') {
# link to patch
$patchno++;
print " | " .