summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Bruhin <git@the-compiler.org>2018-05-03 14:52:10 +0200
committerFlorian Bruhin <git@the-compiler.org>2018-05-03 14:52:10 +0200
commit979b7cfaba13fa064d96594390c4239a0e3e80c1 (patch)
treec5471ee4c603601cadc554d973300ecb47daeb87
parent2b6b4e82a7c65683483032e922a0683e87b5db18 (diff)
downloadqutebrowser-979b7cfaba13fa064d96594390c4239a0e3e80c1.tar.gz
qutebrowser-979b7cfaba13fa064d96594390c4239a0e3e80c1.zip
Add a stop-gap solution for AssertionError when retrying downloads
See #3847
-rw-r--r--doc/changelog.asciidoc1
-rw-r--r--qutebrowser/browser/webengine/webenginedownloads.py6
2 files changed, 6 insertions, 1 deletions
diff --git a/doc/changelog.asciidoc b/doc/changelog.asciidoc
index 1eeaa49f9..3af81d441 100644
--- a/doc/changelog.asciidoc
+++ b/doc/changelog.asciidoc
@@ -90,6 +90,7 @@ Fixed
- `@match` in Greasemonkey scripts now more closely matches the proper pattern
syntax.
- Searching via `/` or `?` now doesn't handle any characters in a special way.
+- Fixed crash when trying to retry some failed downloads on QtWebEngine.
v1.2.1
------
diff --git a/qutebrowser/browser/webengine/webenginedownloads.py b/qutebrowser/browser/webengine/webenginedownloads.py
index 7c702a56f..68e151959 100644
--- a/qutebrowser/browser/webengine/webenginedownloads.py
+++ b/qutebrowser/browser/webengine/webenginedownloads.py
@@ -101,7 +101,11 @@ class DownloadItem(downloads.AbstractDownloadItem):
def retry(self):
state = self._qt_item.state()
- assert state == QWebEngineDownloadItem.DownloadInterrupted, state
+ if state != QWebEngineDownloadItem.DownloadInterrupted:
+ log.downloads.warning(
+ "Trying to retry download in state {}".format(
+ debug.qenum_key(QWebEngineDownloadItem, state)))
+ return
try:
self._qt_item.resume()