diff options
author | Julien Kauffmann <julien.kauffmann@freelan.org> | 2012-02-08 10:11:00 +0100 |
---|---|---|
committer | Julien Kauffmann <julien.kauffmann@freelan.org> | 2012-02-08 10:11:14 +0100 |
commit | 3cadd6f793f6c59fa3ad0d6e1a209d6b6b06b6da (patch) | |
tree | 19223b48067de0a1edc322577ada516488bd0094 /git/config.py | |
parent | 2b7975cab03ea76db412b9f8d35ef82286f25777 (diff) | |
download | gitpython-3cadd6f793f6c59fa3ad0d6e1a209d6b6b06b6da.tar.gz |
Fixed a case were values containing \\" were not properly escaped
Diffstat (limited to 'git/config.py')
-rw-r--r-- | git/config.py | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/git/config.py b/git/config.py index 64031fdb..620f7b10 100644 --- a/git/config.py +++ b/git/config.py @@ -254,9 +254,14 @@ class GitConfigParser(cp.RawConfigParser, object): if not escaped and c == '"': in_quote = not in_quote else: - escaped = (c == '\\') + escaped = (c == '\\') and not escaped unquoted_optval += c + if in_quote: + if not e: + e = cp.ParsingError(fpname) + e.append(lineno, repr(line)) + optval = unquoted_optval optval = optval.replace('\\\\', '\\') # Unescape backslashes |