summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Bruhin <me@the-compiler.org>2018-09-02 11:58:34 +0200
committerFlorian Bruhin <me@the-compiler.org>2018-09-02 12:00:31 +0200
commit77bf6788c8d4b43a4d88e0493f7371b52634e2e5 (patch)
tree7c425b4471bd737d07c223869a0c361ef576d506
parentfafae11adfe545b6aefb010fb69917c457e053aa (diff)
downloadqutebrowser-77bf6788c8d4b43a4d88e0493f7371b52634e2e5.tar.gz
qutebrowser-77bf6788c8d4b43a4d88e0493f7371b52634e2e5.zip
Handle :// as URL pattern
(cherry picked from commit 67b4b7d490b901a494b62c3b44833a247eabfa34)
-rw-r--r--qutebrowser/utils/urlmatch.py4
-rw-r--r--tests/unit/utils/test_urlmatch.py1
2 files changed, 4 insertions, 1 deletions
diff --git a/qutebrowser/utils/urlmatch.py b/qutebrowser/utils/urlmatch.py
index 5d9afc13e..888287ec2 100644
--- a/qutebrowser/utils/urlmatch.py
+++ b/qutebrowser/utils/urlmatch.py
@@ -140,7 +140,9 @@ class UrlPattern:
Deviation from Chromium:
- We assume * when no scheme has been given.
"""
- assert parsed.scheme, parsed
+ if not parsed.scheme:
+ raise ParseError("Missing scheme")
+
if parsed.scheme == 'any':
self._scheme = None
return
diff --git a/tests/unit/utils/test_urlmatch.py b/tests/unit/utils/test_urlmatch.py
index dcd703790..aa3ace903 100644
--- a/tests/unit/utils/test_urlmatch.py
+++ b/tests/unit/utils/test_urlmatch.py
@@ -84,6 +84,7 @@ from qutebrowser.utils import urlmatch
# Additional tests
("http://[", "Invalid IPv6 URL"),
+ ("://", "Missing scheme"),
])
def test_invalid_patterns(pattern, error):
with pytest.raises(urlmatch.ParseError, match=re.escape(error)):