use Fcntl ':mode';
my $cgi = new CGI;
-my $version = "248";
+my $version = "249";
my $my_url = $cgi->url();
my $my_uri = $cgi->url(-absolute => 1);
my $rss_link = "";
if ($input =~ m/(^|\/)(|\.|\.\.)($|\/)/) {
return undef;
}
- if ($input =~ m/[^a-zA-Z0-9_\.\/\-\+\#\~]/) {
+ if ($input =~ m/[^a-zA-Z0-9_ \.\/\-\+\#\~]/) {
return undef;
}
return $input;
sub esc {
my $str = shift;
+ $str =~ s/\+/%2B/g;
$str =~ s/ /\+/g;
- $str =~ s/\+/%2b/g;
return $str;
}
close $fd;
}
- open my $fd, "-|", "/usr/bin/diff -u -p -L $from_name -L $to_name $from_tmp $to_tmp";
+ open my $fd, "-|", "/usr/bin/diff -u -p -L \'$from_name\' -L \'$to_name\' $from_tmp $to_tmp";
if ($format eq "plain") {
undef $/;
print <$fd>;
"</div>\n";
print "<div class=\"page_path\"><b>/$file_name</b><br/></div>\n";
- open my $fd, "-|", "$gitbin/git-rev-list $hash | $gitbin/git-diff-tree -r --stdin $file_name";
+ open my $fd, "-|", "$gitbin/git-rev-list $hash | $gitbin/git-diff-tree -r --stdin \'$file_name\'";
my $commit;
print "<table cellspacing=\"0\">\n";
my $alternate = 0;
if ($pickaxe_search) {
$/ = "\n";
- open my $fd, "-|", "$gitbin/git-rev-list $hash | $gitbin/git-diff-tree -r --stdin -S$searchtext";
+ open my $fd, "-|", "$gitbin/git-rev-list $hash | $gitbin/git-diff-tree -r --stdin -S\'$searchtext\'";
undef %co;
my @files;
while (my $line = <$fd>) {