diff options
author | Marcelo Glezer <mg@tekii.com.ar> | 2015-06-05 15:19:57 -0300 |
---|---|---|
committer | Marcelo Glezer <mg@tekii.com.ar> | 2015-06-05 15:19:57 -0300 |
commit | 17b34de28d374e7c2b189d796475668779f2ce3a (patch) | |
tree | 04893a9d8952f28c37ebec842424ae27b5f85e94 /libmproxy/console/common.py | |
parent | 783e904b924d7f8d4448512b03383d429f5cf7de (diff) | |
download | mitmproxy-17b34de28d374e7c2b189d796475668779f2ce3a.tar.gz mitmproxy-17b34de28d374e7c2b189d796475668779f2ce3a.tar.bz2 mitmproxy-17b34de28d374e7c2b189d796475668779f2ce3a.zip |
fix #607 decode data before sending it to pyperclip
Diffstat (limited to 'libmproxy/console/common.py')
-rw-r--r-- | libmproxy/console/common.py | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/libmproxy/console/common.py b/libmproxy/console/common.py index 57d4c994..2395a67d 100644 --- a/libmproxy/console/common.py +++ b/libmproxy/console/common.py @@ -284,8 +284,15 @@ def copy_flow(part, scope, flow, master, state): signals.status_message.send(message="No contents to copy.") return + # this is because pyperclip does an encode('utf-8') without checking if data is already encoded or not + toclip = "" try: - pyperclip.copy(data) + toclip = data.decode('utf-8') + except (UnicodeDecodeError): + toclip = data + + try: + pyperclip.copy(toclip) except (RuntimeError, UnicodeDecodeError, AttributeError): def save(k): if k == "y": |