Index: Source/core/loader/FrameFetchContext.cpp |
diff --git a/Source/core/loader/FrameFetchContext.cpp b/Source/core/loader/FrameFetchContext.cpp |
index 6b686f761440bbb55ef9c4cda26c31079798bd61..2a2f80a4ea303b74a8e5201b98d3f18bd401cf6c 100644 |
--- a/Source/core/loader/FrameFetchContext.cpp |
+++ b/Source/core/loader/FrameFetchContext.cpp |
@@ -616,10 +616,13 @@ void FrameFetchContext::addClientHintsIfNecessary(FetchRequest& fetchRequest) |
if (!RuntimeEnabledFeatures::clientHintsEnabled() || !m_document) |
return; |
- if (m_document->clientHintsPreferences().shouldSendDPR()) |
+ bool shouldSendDPR = m_document->clientHintsPreferences().shouldSendDPR() || fetchRequest.clientHintsPreferences().shouldSendDPR(); |
+ bool shouldSendRW = m_document->clientHintsPreferences().shouldSendRW() || fetchRequest.clientHintsPreferences().shouldSendRW(); |
+ |
+ if (shouldSendDPR) |
fetchRequest.mutableResourceRequest().addHTTPHeaderField("DPR", AtomicString(String::number(m_document->devicePixelRatio()))); |
- if (m_document->clientHintsPreferences().shouldSendRW() && frame()->view()) { |
+ if (shouldSendRW && frame()->view()) { |
FetchRequest::ResourceWidth resourceWidth = fetchRequest.resourceWidth(); |
float usedResourceWidth = resourceWidth.isSet ? resourceWidth.width : frame()->view()->viewportWidth(); |
fetchRequest.mutableResourceRequest().addHTTPHeaderField("RW", AtomicString(String::number(usedResourceWidth))); |