aboutsummaryrefslogtreecommitdiffstats
path: root/libmproxy/script.py
diff options
context:
space:
mode:
authorMaximilian Hils <git@maximilianhils.com>2014-08-08 02:27:28 +0200
committerMaximilian Hils <git@maximilianhils.com>2014-08-08 02:27:28 +0200
commitc01b294d8d7c070547b9eb981b6001581b33c7b4 (patch)
treefa6118a84a6c98678ed85cbaf8ff8e32ada56419 /libmproxy/script.py
parentc6911a41586a2aeafbcdbd7be1744c3dd0678d5a (diff)
downloadmitmproxy-c01b294d8d7c070547b9eb981b6001581b33c7b4.tar.gz
mitmproxy-c01b294d8d7c070547b9eb981b6001581b33c7b4.tar.bz2
mitmproxy-c01b294d8d7c070547b9eb981b6001581b33c7b4.zip
fix script path escaping on windows, refs #293
Diffstat (limited to 'libmproxy/script.py')
-rw-r--r--libmproxy/script.py3
1 files changed, 3 insertions, 0 deletions
diff --git a/libmproxy/script.py b/libmproxy/script.py
index 5abcbaf4..e9716696 100644
--- a/libmproxy/script.py
+++ b/libmproxy/script.py
@@ -55,6 +55,9 @@ class Script:
@classmethod
def parse_command(klass, command):
+ if os.name == "nt": # Windows: escape all backslashes in the path.
+ backslashes = shlex.split(command, posix=False)[0].count("\\")
+ command = command.replace("\\", "\\\\", backslashes)
args = shlex.split(command)
args[0] = os.path.expanduser(args[0])
if not os.path.exists(args[0]):