X-Git-Url: https://git.ladys.computer/Gitweb/blobdiff_plain/fb80fbe55d390ada4e110f039b13b9d5588a87eabe86e83158f715d7dcded093..56b1a1c30ebc43edb4221ed1a8f8213f9807adf9d03338bfa004cd8ba9bf310e:/gitweb.perl
diff --git a/gitweb.perl b/gitweb.perl
index dd5283c..9efc39d 100755
--- a/gitweb.perl
+++ b/gitweb.perl
@@ -612,6 +612,8 @@ sub href(%) {
);
my %mapping = @mapping;
+ $params{'project'} = $project unless exists $params{'project'};
+
if ($params{-replay}) {
while (my ($name, $symbol) = each %mapping) {
if (!exists $params{$name}) {
@@ -621,8 +623,6 @@ sub href(%) {
}
}
- $params{'project'} = $project unless exists $params{'project'};
-
my ($use_pathinfo) = gitweb_check_feature('pathinfo');
if ($use_pathinfo) {
# use PATH_INFO for project name
@@ -754,29 +754,40 @@ sub esc_path {
# Make control characters "printable", using character escape codes (CEC)
sub quot_cec {
my $cntrl = shift;
+ my %opts = @_;
my %es = ( # character escape codes, aka escape sequences
- "\t" => '\t', # tab (HT)
- "\n" => '\n', # line feed (LF)
- "\r" => '\r', # carrige return (CR)
- "\f" => '\f', # form feed (FF)
- "\b" => '\b', # backspace (BS)
- "\a" => '\a', # alarm (bell) (BEL)
- "\e" => '\e', # escape (ESC)
- "\013" => '\v', # vertical tab (VT)
- "\000" => '\0', # nul character (NUL)
- );
+ "\t" => '\t', # tab (HT)
+ "\n" => '\n', # line feed (LF)
+ "\r" => '\r', # carrige return (CR)
+ "\f" => '\f', # form feed (FF)
+ "\b" => '\b', # backspace (BS)
+ "\a" => '\a', # alarm (bell) (BEL)
+ "\e" => '\e', # escape (ESC)
+ "\013" => '\v', # vertical tab (VT)
+ "\000" => '\0', # nul character (NUL)
+ );
my $chr = ( (exists $es{$cntrl})
? $es{$cntrl}
: sprintf('\%03o', ord($cntrl)) );
- return "$chr";
+ if ($opts{-nohtml}) {
+ return $chr;
+ } else {
+ return "$chr";
+ }
}
# Alternatively use unicode control pictures codepoints,
# Unicode "printable representation" (PR)
sub quot_upr {
my $cntrl = shift;
+ my %opts = @_;
+
my $chr = sprintf('%04d;', 0x2400+ord($cntrl));
- return "$chr";
+ if ($opts{-nohtml}) {
+ return $chr;
+ } else {
+ return "$chr";
+ }
}
# git may return quoted and escaped filenames
@@ -801,7 +812,7 @@ sub unquote {
return chr(oct($seq));
} elsif (exists $es{$seq}) {
# C escape sequence, aka character escape code
- return $es{$seq}
+ return $es{$seq};
}
# quoted ordinary character
return $seq;