aboutsummaryrefslogtreecommitdiffstats
path: root/libmproxy/console/common.py
diff options
context:
space:
mode:
authorMaximilian Hils <git@maximilianhils.com>2015-04-26 18:41:40 +0200
committerMaximilian Hils <git@maximilianhils.com>2015-04-26 18:41:40 +0200
commitf96e4957b1f136734ee1207c76aca95be8a2ad6b (patch)
tree68971b18911d91a367df89680307ba9cfe3d54cf /libmproxy/console/common.py
parent79e587fe040be1cefe8637f28e6c2e1a8a50779d (diff)
parent1c5277b21fd283a3b58d145c5090f59d657b594d (diff)
downloadmitmproxy-f96e4957b1f136734ee1207c76aca95be8a2ad6b.tar.gz
mitmproxy-f96e4957b1f136734ee1207c76aca95be8a2ad6b.tar.bz2
mitmproxy-f96e4957b1f136734ee1207c76aca95be8a2ad6b.zip
Merge branch 'master' of github.com:mitmproxy/mitmproxy
Diffstat (limited to 'libmproxy/console/common.py')
-rw-r--r--libmproxy/console/common.py22
1 files changed, 20 insertions, 2 deletions
diff --git a/libmproxy/console/common.py b/libmproxy/console/common.py
index 74d510eb..f417aade 100644
--- a/libmproxy/console/common.py
+++ b/libmproxy/console/common.py
@@ -196,18 +196,36 @@ def raw_format_flow(f, focus, extended, padding):
def save_data(path, data, master, state):
if not path:
return
- path = os.path.expanduser(path)
try:
with file(path, "wb") as f:
f.write(data)
except IOError, v:
signals.status_message.send(message=v.strerror)
+def ask_save_overwite(path, data, master, state):
+ if not path:
+ return
+ path = os.path.expanduser(path)
+ if os.path.exists(path):
+ def save_overwite(k):
+ if k == "y":
+ save_data(path, data, master, state)
+
+ signals.status_prompt_onekey.send(
+ prompt = "'"+path+"' already exists. Overwite?",
+ keys = (
+ ("yes", "y"),
+ ("no", "n"),
+ ),
+ callback = save_overwite
+ )
+ else:
+ save_data(path, data, master, state)
def ask_save_path(prompt, data, master, state):
signals.status_prompt_path.send(
prompt = prompt,
- callback = save_data,
+ callback = ask_save_overwite,
args = (data, master, state)
)