From fea96b4527a2db6cd97c9053d647478b347d3853 Mon Sep 17 00:00:00 2001 From: wolfbeast Date: Fri, 14 Dec 2018 12:50:01 +0100 Subject: Do not report resource-timing subdocument loads triggered by that subdocument. --- netwerk/protocol/http/HttpBaseChannel.cpp | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'netwerk/protocol') diff --git a/netwerk/protocol/http/HttpBaseChannel.cpp b/netwerk/protocol/http/HttpBaseChannel.cpp index 03123ceb0..21b661c2b 100644 --- a/netwerk/protocol/http/HttpBaseChannel.cpp +++ b/netwerk/protocol/http/HttpBaseChannel.cpp @@ -3676,14 +3676,17 @@ HttpBaseChannel::GetPerformance() return nullptr; } - // We only add to the document's performance object if it has the same - // principal as the one triggering the load. This is to prevent navigations - // triggered _by_ the iframe from showing up in the parent document's - // performance entries if they have different origins. if (!mLoadInfo->TriggeringPrincipal()->Equals(loadingDocument->NodePrincipal())) { return nullptr; } + if (mLoadInfo->GetExternalContentPolicyType() == nsIContentPolicy::TYPE_SUBDOCUMENT && + !mLoadInfo->GetIsFromProcessingFrameAttributes()) { + // We only report loads caused by processing the attributes of the + // browsing context container. + return nullptr; + } + nsCOMPtr innerWindow = loadingDocument->GetInnerWindow(); if (!innerWindow) { return nullptr; -- cgit v1.2.3