summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTamas Zakor <ztamas@inf.u-szeged.hu>2020-04-07 22:48:46 +0200
committerTamas Zakor <ztamas@inf.u-szeged.hu>2020-04-10 07:10:58 +0200
commit4a02c770db7552b7298d8b71e061558b8d16b13a (patch)
treedce8586550a772e2392d9284fc81c7bed7c387f1
parent8cd89e807b58c4ac750b5719ddde319741a7edb9 (diff)
Use WebContents instead of FrameTreeNode when set first party url
Change-Id: Ia69b4aa17396229bf303ef231a08ff135f425249 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
-rw-r--r--src/core/net/proxying_url_loader_factory_qt.cpp23
1 files changed, 8 insertions, 15 deletions
diff --git a/src/core/net/proxying_url_loader_factory_qt.cpp b/src/core/net/proxying_url_loader_factory_qt.cpp
index 71f710737..a7dc8a48c 100644
--- a/src/core/net/proxying_url_loader_factory_qt.cpp
+++ b/src/core/net/proxying_url_loader_factory_qt.cpp
@@ -207,22 +207,15 @@ void InterceptedRequest::Start()
{
DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
- content::FrameTreeNode *frameTreeNode = nullptr;
+ content::WebContents *webContents = nullptr;
if (process_id_) {
- content::RenderFrameHostImpl *renderFrameHost = content::RenderFrameHostImpl::FromID(process_id_,
- request_.render_frame_id);
- if (renderFrameHost)
- frameTreeNode = renderFrameHost->frame_tree_node();
- } else {
- frameTreeNode = content::FrameTreeNode::GloballyFindByID(request_.render_frame_id);
- }
- // Follows a similar path to the root as RenderFrameHostImpl::CalculateSiteForCookies()
- if (frameTreeNode && frameTreeNode->frame_tree()
- && frameTreeNode->frame_tree()->root()
- && frameTreeNode->frame_tree()->root()->current_frame_host())
- m_topDocumentUrl = frameTreeNode->frame_tree()->root()->current_frame_host()->GetLastCommittedURL();
- else
- LOG(INFO) << "InterceptedRequest::Start() - null frameTreeNode or path to top frame";
+ content::RenderFrameHost *frameHost = content::RenderFrameHost::FromID(process_id_, request_.render_frame_id);
+ webContents = content::WebContents::FromRenderFrameHost(frameHost);
+ } else
+ webContents = content::WebContents::FromFrameTreeNodeId(request_.render_frame_id);
+
+ if (webContents)
+ m_topDocumentUrl = static_cast<content::WebContentsImpl *>(webContents)->GetLastCommittedURL();
base::PostTask(FROM_HERE, {content::BrowserThread::IO},
base::BindOnce(&InterceptedRequest::Restart, m_weakPtr));