diff options
author | Maximilian Hils <git@maximilianhils.com> | 2016-07-21 19:43:56 -0700 |
---|---|---|
committer | Maximilian Hils <git@maximilianhils.com> | 2016-07-21 19:44:20 -0700 |
commit | 8a2c7bea8e66a73679a5ebd3287f8eaeec1063ce (patch) | |
tree | 0f8935a35ba2701b749de224d23693ca39110711 | |
parent | daae51823de79ca728e32d7925e239231c85e442 (diff) | |
download | mitmproxy-8a2c7bea8e66a73679a5ebd3287f8eaeec1063ce.tar.gz mitmproxy-8a2c7bea8e66a73679a5ebd3287f8eaeec1063ce.tar.bz2 mitmproxy-8a2c7bea8e66a73679a5ebd3287f8eaeec1063ce.zip |
py3: fix copy to clipboard
-rw-r--r-- | mitmproxy/console/common.py | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/mitmproxy/console/common.py b/mitmproxy/console/common.py index 6f0b46dd..c7f87a8f 100644 --- a/mitmproxy/console/common.py +++ b/mitmproxy/console/common.py @@ -134,7 +134,11 @@ def save_data(path, data): if not path: return try: - with open(path, "wb") as f: + if isinstance(data, bytes): + mode = "wb" + else: + mode = "w" + with open(path, mode) as f: f.write(data) except IOError as v: signals.status_message.send(message=v.strerror) @@ -193,10 +197,9 @@ def ask_scope_and_callback(flow, cb, *args): def copy_to_clipboard_or_prompt(data): # pyperclip calls encode('utf-8') on data to be copied without checking. # if data are already encoded that way UnicodeDecodeError is thrown. - toclip = "" - try: - toclip = data.decode('utf-8') - except (UnicodeDecodeError): + if isinstance(data, bytes): + toclip = data.decode("utf8", "replace") + else: toclip = data try: |