summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Bruhin <me@the-compiler.org>2022-01-29 13:31:04 +0100
committerFlorian Bruhin <me@the-compiler.org>2022-01-29 13:31:04 +0100
commit86b5bed388544d2d445a3dba151e3c3a4c8814b7 (patch)
treef274eda2886ccaa1e3ae31c6cd4382548d52a24b
parent2dc11c128a67b25029827cb412a37aefb67b52e5 (diff)
downloadqutebrowser-86b5bed388544d2d445a3dba151e3c3a4c8814b7.tar.gz
qutebrowser-86b5bed388544d2d445a3dba151e3c3a4c8814b7.zip
Partially re-revert _error_page_workaround changes
The logging part removed in 438b8b46094890a28db6bac07ff1ae67bbc5ee78 is still needed for some tests, and debugging too.
-rw-r--r--qutebrowser/browser/webengine/webenginetab.py15
1 files changed, 10 insertions, 5 deletions
diff --git a/qutebrowser/browser/webengine/webenginetab.py b/qutebrowser/browser/webengine/webenginetab.py
index 7fa0b2b65..7d355d10e 100644
--- a/qutebrowser/browser/webengine/webenginetab.py
+++ b/qutebrowser/browser/webengine/webenginetab.py
@@ -1522,11 +1522,11 @@ class WebEngineTab(browsertab.AbstractTab):
}
self.renderer_process_terminated.emit(status_map[status], exitcode)
- def _error_page_workaround(self, html):
+ def _error_page_workaround(self, js_enabled, html):
"""Check if we're displaying a Chromium error page.
- This gets called if we got a loadFinished(False) without JavaScript, so
- we can display at least some error page, since Chromium's can't be
+ This gets called if we got a loadFinished(False), so we can display at
+ least some error page in situations where Chromium's can't be
displayed.
WORKAROUND for https://bugreports.qt.io/browse/QTBUG-66643
@@ -1537,6 +1537,10 @@ class WebEngineTab(browsertab.AbstractTab):
error = match.group(1)
log.webview.error("Load error: {}".format(error))
+
+ if js_enabled:
+ return
+
self._show_error_page(self.url(), error=error)
@pyqtSlot(int)
@@ -1559,8 +1563,9 @@ class WebEngineTab(browsertab.AbstractTab):
# WORKAROUND for https://bugreports.qt.io/browse/QTBUG-65223
self._update_load_status(ok)
- if not self.settings.test_attribute('content.javascript.enabled'):
- self.dump_async(self._error_page_workaround)
+ self.dump_async(functools.partial(
+ self._error_page_workaround,
+ self.settings.test_attribute('content.javascript.enabled')))
@pyqtSlot(certificateerror.CertificateErrorWrapper)
def _on_ssl_errors(self, error):