summaryrefslogtreecommitdiff
path: root/git/util.py
diff options
context:
space:
mode:
Diffstat (limited to 'git/util.py')
-rw-r--r--git/util.py13
1 files changed, 6 insertions, 7 deletions
diff --git a/git/util.py b/git/util.py
index e9d183d9..80985df4 100644
--- a/git/util.py
+++ b/git/util.py
@@ -343,13 +343,13 @@ def expand_path(p, expand_vars=True):
def remove_password_if_present(cmdline):
"""
Parse any command line argument and if on of the element is an URL with a
- password, replace it by stars. If nothing found just returns a copy of the
- command line as-is.
+ password, replace it by stars (in-place).
+
+ If nothing found just returns the command line as-is.
This should be used for every log line that print a command line.
"""
- redacted_cmdline = []
- for to_parse in cmdline:
+ for index, to_parse in enumerate(cmdline):
try:
url = urlsplit(to_parse)
# Remove password from the URL if present
@@ -358,12 +358,11 @@ def remove_password_if_present(cmdline):
edited_url = url._replace(
netloc=url.netloc.replace(url.password, "*****"))
- redacted_cmdline.append(urlunsplit(edited_url))
+ cmdline[index] = urlunsplit(edited_url)
except ValueError:
- redacted_cmdline.append(to_parse)
# This is not a valid URL
pass
- return redacted_cmdline
+ return cmdline
#} END utilities