summaryrefslogtreecommitdiff
path: root/perl/Git.pm
diff options
context:
space:
mode:
authorPhillip Wood <phillip.wood@dunelm.org.uk>2017-06-30 10:49:10 +0100
committerJunio C Hamano <gitster@pobox.com>2017-06-30 08:02:43 -0700
commit4cebfac94412ccbd077c6776f7c8db1914bafde2 (patch)
tree719bb80a22b93357f21c121555e90caafe325906 /perl/Git.pm
parent1d542a5487f788874f18cca0d23b7b680fa04119 (diff)
downloadgit-4cebfac94412ccbd077c6776f7c8db1914bafde2.tar.gz
Git::unquote_path(): handle '\a'
unquote_path() does not handle quoted paths containing '\a', even though quote.c::unquote_c_style() does, and quote.c:sq_lookup[] tells quote.c::sq_must_quote() that '\007' must be quoted as '\a'. Signed-off-by: Phillip Wood <phillip.wood@dunelm.org.uk> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'perl/Git.pm')
-rw-r--r--perl/Git.pm3
1 files changed, 2 insertions, 1 deletions
diff --git a/perl/Git.pm b/perl/Git.pm
index cf7a7e6a51..3179e6efb2 100644
--- a/perl/Git.pm
+++ b/perl/Git.pm
@@ -1461,6 +1461,7 @@ when not using -z or when parsing the output of diff -u.
{
my %cquote_map = (
+ "a" => chr(7),
"b" => chr(8),
"t" => chr(9),
"n" => chr(10),
@@ -1487,7 +1488,7 @@ when not using -z or when parsing the output of diff -u.
$_ = $2;
last;
}
- if (/^([\\\042btnvfr])(.*)$/) {
+ if (/^([\\\042abtnvfr])(.*)$/) {
$retval .= $cquote_map{$1};
$_ = $2;
last;