aboutsummaryrefslogtreecommitdiffstats
path: root/libmproxy/console/common.py
diff options
context:
space:
mode:
Diffstat (limited to 'libmproxy/console/common.py')
-rw-r--r--libmproxy/console/common.py15
1 files changed, 11 insertions, 4 deletions
diff --git a/libmproxy/console/common.py b/libmproxy/console/common.py
index f417aade..f7dc0d37 100644
--- a/libmproxy/console/common.py
+++ b/libmproxy/console/common.py
@@ -236,6 +236,9 @@ def copy_flow_format_data(part, scope, flow):
else:
data = ""
if scope in ("q", "a"):
+ if flow.request.content == None:
+ signals.status_message.send(message="Please retry, after finishing loading.")
+ return "", True
with decoded(flow.request):
if part == "h":
data += flow.request.assemble()
@@ -247,6 +250,9 @@ def copy_flow_format_data(part, scope, flow):
# Add padding between request and response
data += "\r\n" * 2
if scope in ("s", "a") and flow.response:
+ if flow.response.content == None:
+ signals.status_message.send(message="Please retry, after finishing loading.")
+ return "", True
with decoded(flow.response):
if part == "h":
data += flow.response.assemble()
@@ -254,17 +260,18 @@ def copy_flow_format_data(part, scope, flow):
data += flow.response.content
else:
raise ValueError("Unknown part: {}".format(part))
- return data
-
+ return data, False
def copy_flow(part, scope, flow, master, state):
"""
part: _c_ontent, _a_ll, _u_rl
scope: _a_ll, re_q_uest, re_s_ponse
"""
- data = copy_flow_format_data(part, scope, flow)
+ data, err = copy_flow_format_data(part, scope, flow)
- if not data:
+ if err:
+ return
+ elif not data:
if scope == "q":
signals.status_message.send(message="No request content to copy.")
elif scope == "s":