Contents of %diffinfo hash should be quoted upon output but kept
unquoted internally. Later users of this hash expect filenames
to be filenames, not HTML gibberish.
Signed-off-by: Petr Baudis <redacted>
Signed-off-by: Junio C Hamano <redacted>
if (defined $file_name) {
if (defined $file_parent) {
$diffinfo{'status'} = '2';
if (defined $file_name) {
if (defined $file_parent) {
$diffinfo{'status'} = '2';
- $diffinfo{'from_file'} = esc_html($file_parent);
- $diffinfo{'to_file'} = esc_html($file_name);
+ $diffinfo{'from_file'} = $file_parent;
+ $diffinfo{'to_file'} = $file_name;
} else { # assume not renamed
$diffinfo{'status'} = '1';
} else { # assume not renamed
$diffinfo{'status'} = '1';
- $diffinfo{'from_file'} = esc_html($file_name);
- $diffinfo{'to_file'} = esc_html($file_name);
+ $diffinfo{'from_file'} = $file_name;
+ $diffinfo{'to_file'} = $file_name;
}
} else { # no filename given
$diffinfo{'status'} = '2';
}
} else { # no filename given
$diffinfo{'status'} = '2';
} else {
while (my $line = <$fd>) {
} else {
while (my $line = <$fd>) {
- $line =~ s!a/($hash|$hash_parent)!a/$diffinfo{'from_file'}!g;
- $line =~ s!b/($hash|$hash_parent)!b/$diffinfo{'to_file'}!g;
+ $line =~ s!a/($hash|$hash_parent)!'a/'.esc_html($diffinfo{'from_file'})!eg;
+ $line =~ s!b/($hash|$hash_parent)!'b/'.esc_html($diffinfo{'to_file'})!eg;