diff options
author | Allan Sandfeld Jensen <allan.jensen@theqtcompany.com> | 2016-02-20 13:59:30 +0100 |
---|---|---|
committer | Allan Sandfeld Jensen <allan.jensen@theqtcompany.com> | 2016-02-20 13:59:30 +0100 |
commit | d3525d33cb9085cf1ee61b437931555fe7d932ae (patch) | |
tree | 527adee7c481769d0a77f96b25669ec86a606099 /src/core/web_contents_delegate_qt.cpp | |
parent | f3aaa7531e7b429d958e7002e642f4b59568ff74 (diff) | |
parent | 3c356bcf7c0fd4af7fb86824276c5a170ae10ace (diff) |
Merge remote-tracking branch 'origin/5.6' into 5.7
Change-Id: If884b8b8bc087a6a726476b49cdb48a0efaa173e
Diffstat (limited to 'src/core/web_contents_delegate_qt.cpp')
-rw-r--r-- | src/core/web_contents_delegate_qt.cpp | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/src/core/web_contents_delegate_qt.cpp b/src/core/web_contents_delegate_qt.cpp index 1dbb38e97..011becf83 100644 --- a/src/core/web_contents_delegate_qt.cpp +++ b/src/core/web_contents_delegate_qt.cpp @@ -211,7 +211,15 @@ void WebContentsDelegateQt::DidFailProvisionalLoad(content::RenderFrameHost* ren void WebContentsDelegateQt::DidFailLoad(content::RenderFrameHost* render_frame_host, const GURL& validated_url, int error_code, const base::string16& error_description, bool was_ignored_by_handler) { Q_UNUSED(was_ignored_by_handler); - if (m_loadingErrorFrameList.removeOne(render_frame_host->GetRoutingID()) || render_frame_host->GetParent()) + if (validated_url.spec() == content::kUnreachableWebDataURL) { + m_loadingErrorFrameList.removeOne(render_frame_host->GetRoutingID()); + qCritical("Loading error-page failed. This shouldn't happen."); + if (!render_frame_host->GetParent()) + m_viewClient->loadFinished(false /* success */, toQt(validated_url), true /* isErrorPage */); + return; + } + + if (render_frame_host->GetParent()) return; m_viewClient->iconChanged(QUrl()); @@ -221,8 +229,9 @@ void WebContentsDelegateQt::DidFailLoad(content::RenderFrameHost* render_frame_h void WebContentsDelegateQt::DidFinishLoad(content::RenderFrameHost* render_frame_host, const GURL& validated_url) { - if (m_loadingErrorFrameList.removeOne(render_frame_host->GetRoutingID())) { - Q_ASSERT(validated_url.is_valid() && validated_url.spec() == content::kUnreachableWebDataURL); + Q_ASSERT(validated_url.is_valid()); + if (validated_url.spec() == content::kUnreachableWebDataURL) { + m_loadingErrorFrameList.removeOne(render_frame_host->GetRoutingID()); m_viewClient->iconChanged(QUrl()); // Trigger LoadFinished signal for main frame's error page only. |