diff options
author | Clemens <cle1000.cb@gmail.com> | 2016-08-09 19:49:36 +0200 |
---|---|---|
committer | Clemens <cle1000.cb@gmail.com> | 2016-08-09 19:49:36 +0200 |
commit | b27e456ce2150d638b4eef73703da8a30722d392 (patch) | |
tree | 2ba82b15f1bdf22f12b7d97e726dcbd19374e9cf /netlib/strutils.py | |
parent | 78bd99f97c36ba24bbab389350eb8e80ba16738f (diff) | |
parent | dcfa7027aed5a8d4aa80aff67fc299298659fb1b (diff) | |
download | mitmproxy-b27e456ce2150d638b4eef73703da8a30722d392.tar.gz mitmproxy-b27e456ce2150d638b4eef73703da8a30722d392.tar.bz2 mitmproxy-b27e456ce2150d638b4eef73703da8a30722d392.zip |
merge with master
Diffstat (limited to 'netlib/strutils.py')
-rw-r--r-- | netlib/strutils.py | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/netlib/strutils.py b/netlib/strutils.py index 8f27ebb7..4a46b6b1 100644 --- a/netlib/strutils.py +++ b/netlib/strutils.py @@ -69,7 +69,7 @@ def escape_control_characters(text, keep_spacing=True): return text.translate(trans) -def bytes_to_escaped_str(data, keep_spacing=False): +def bytes_to_escaped_str(data, keep_spacing=False, escape_single_quotes=False): """ Take bytes and return a safe string that can be displayed to the user. @@ -86,6 +86,8 @@ def bytes_to_escaped_str(data, keep_spacing=False): # We always insert a double-quote here so that we get a single-quoted string back # https://stackoverflow.com/questions/29019340/why-does-python-use-different-quotes-for-representing-strings-depending-on-their ret = repr(b'"' + data).lstrip("b")[2:-1] + if not escape_single_quotes: + ret = re.sub(r"(?<!\\)(\\\\)*\\'", lambda m: (m.group(1) or "") + "'", ret) if keep_spacing: ret = re.sub( r"(?<!\\)(\\\\)*\\([nrt])", |