summaryrefslogtreecommitdiff
path: root/qutebrowser/utils/urlutils.py
diff options
context:
space:
mode:
authorFlorian Bruhin <me@the-compiler.org>2021-06-24 19:57:03 +0200
committerFlorian Bruhin <me@the-compiler.org>2021-06-24 19:57:03 +0200
commitc580ebf0801e5a3ecabc54f327498bb753c6d5f2 (patch)
tree3e6e4ac0ae1de93fde1f93821733e7b58ae3091a /qutebrowser/utils/urlutils.py
parent0b8cc812fd0b73e296a3f93db02ce5d0b35714fc (diff)
parentd5433702a5c5c8e2ac831929a304b21570366dba (diff)
downloadqutebrowser-c580ebf0801e5a3ecabc54f327498bb753c6d5f2.tar.gz
qutebrowser-c580ebf0801e5a3ecabc54f327498bb753c6d5f2.zip
Merge remote-tracking branch 'origin/pr/6372'
Diffstat (limited to 'qutebrowser/utils/urlutils.py')
-rw-r--r--qutebrowser/utils/urlutils.py11
1 files changed, 10 insertions, 1 deletions
diff --git a/qutebrowser/utils/urlutils.py b/qutebrowser/utils/urlutils.py
index 045981680..002f10411 100644
--- a/qutebrowser/utils/urlutils.py
+++ b/qutebrowser/utils/urlutils.py
@@ -26,7 +26,7 @@ import ipaddress
import posixpath
import urllib.parse
import mimetypes
-from typing import Optional, Tuple, Union
+from typing import Optional, Tuple, Union, Iterable
from PyQt5.QtCore import QUrl
from PyQt5.QtNetwork import QHostInfo, QHostAddress, QNetworkProxy
@@ -619,3 +619,12 @@ def parse_javascript_url(url: QUrl) -> str:
raise Error("Resulted in empty JavaScript code")
return code
+
+
+def widened_hostnames(hostname: str) -> Iterable[str]:
+ """A generator for widening string hostnames.
+
+ Ex: a.c.foo -> [a.c.foo, c.foo, foo]"""
+ while hostname:
+ yield hostname
+ hostname = hostname.partition(".")[-1]