summaryrefslogtreecommitdiff
path: root/qutebrowser/browser
diff options
context:
space:
mode:
authorJason Rosenzweig <mail4jasonr@gmail.com>2021-07-13 21:50:09 +0800
committerJason Rosenzweig <mail4jasonr@gmail.com>2021-07-13 21:50:09 +0800
commitc75f1a66ed1a56eaa56795709775b833a35cc790 (patch)
treee14e9fc28b548719131a122c496d24514f98e2f9 /qutebrowser/browser
parent32f689677308a9d582ec7472b29cf54bc9ea5ff7 (diff)
downloadqutebrowser-c75f1a66ed1a56eaa56795709775b833a35cc790.tar.gz
qutebrowser-c75f1a66ed1a56eaa56795709775b833a35cc790.zip
Fixed infinite loop (tested it too)
Diffstat (limited to 'qutebrowser/browser')
-rw-r--r--qutebrowser/browser/webengine/webenginedownloads.py3
1 files changed, 2 insertions, 1 deletions
diff --git a/qutebrowser/browser/webengine/webenginedownloads.py b/qutebrowser/browser/webengine/webenginedownloads.py
index 453bbf0af..fc7ed8ca2 100644
--- a/qutebrowser/browser/webengine/webenginedownloads.py
+++ b/qutebrowser/browser/webengine/webenginedownloads.py
@@ -251,6 +251,7 @@ class DownloadManager(downloads.AbstractDownloadManager):
qt_filename = os.path.basename(qt_item.path()) # FIXME use 5.14 API
mime_type = qt_item.mimeType()
url = qt_item.url()
+ origin = qt_item.page().url() if qt_item.page() else QUrl()
# WORKAROUND for https://bugreports.qt.io/browse/QTBUG-90355
if version.qtwebengine_versions().webengine >= utils.VersionNumber(5, 15, 3):
@@ -292,7 +293,7 @@ class DownloadManager(downloads.AbstractDownloadManager):
download.set_target(target)
return
- if url.scheme() == "file":
+ if url.scheme() == "file" and origin.isValid() and origin.scheme() == "file":
utils.open_file(url.toLocalFile())
qt_item.cancel()
return