aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--mitmproxy/net/http/url.py2
-rw-r--r--test/mitmproxy/net/http/test_url.py1
2 files changed, 2 insertions, 1 deletions
diff --git a/mitmproxy/net/http/url.py b/mitmproxy/net/http/url.py
index 86f65cfd..d3b93994 100644
--- a/mitmproxy/net/http/url.py
+++ b/mitmproxy/net/http/url.py
@@ -78,7 +78,7 @@ def encode(s: Sequence[Tuple[str, str]], similar_to: str=None) -> str:
if remove_trailing_equal:
encoded = encoded.replace("=&", "&")
- if encoded[-1] == '=':
+ if encoded and encoded[-1] == '=':
encoded = encoded[:-1]
return encoded
diff --git a/test/mitmproxy/net/http/test_url.py b/test/mitmproxy/net/http/test_url.py
index 2064aab8..c9f61faf 100644
--- a/test/mitmproxy/net/http/test_url.py
+++ b/test/mitmproxy/net/http/test_url.py
@@ -108,6 +108,7 @@ def test_empty_key_trailing_equal_sign():
def test_encode():
assert url.encode([('foo', 'bar')])
assert url.encode([('foo', surrogates)])
+ assert not url.encode([], similar_to="justatext")
def test_decode():