Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(351)

Unified Diff: third_party/WebKit/Source/core/css/CSSFontFaceSrcValue.cpp

Issue 1667843003: Make Resource RefCountedWillBeGarbageCollectedFinalized, attempt #2 (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase + address review comments Created 4 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/core/css/CSSFontFaceSrcValue.cpp
diff --git a/third_party/WebKit/Source/core/css/CSSFontFaceSrcValue.cpp b/third_party/WebKit/Source/core/css/CSSFontFaceSrcValue.cpp
index 2244957d6d2205d5a106d4647aade6816dcbb6f5..0befa0116218a1f1b1e92bb59c20adf02f33cca7 100644
--- a/third_party/WebKit/Source/core/css/CSSFontFaceSrcValue.cpp
+++ b/third_party/WebKit/Source/core/css/CSSFontFaceSrcValue.cpp
@@ -72,7 +72,7 @@ String CSSFontFaceSrcValue::customCSSText() const
bool CSSFontFaceSrcValue::hasFailedOrCanceledSubresources() const
{
- return m_fetched && m_fetched->loadFailedOrCanceled();
+ return m_fetched && m_fetched->resource()->loadFailedOrCanceled();
}
static void setCrossOriginAccessControl(FetchRequest& request, SecurityOrigin* securityOrigin)
@@ -93,13 +93,16 @@ FontResource* CSSFontFaceSrcValue::fetch(Document* document)
SecurityOrigin* securityOrigin = document->securityOrigin();
setCrossOriginAccessControl(request, securityOrigin);
request.mutableResourceRequest().setHTTPReferrer(SecurityPolicy::generateReferrer(m_referrer.referrerPolicy, request.url(), m_referrer.referrer));
- m_fetched = FontResource::fetch(request, document->fetcher());
+ RefPtrWillBeRawPtr<FontResource> resource = FontResource::fetch(request, document->fetcher());
+ if (!resource)
+ return nullptr;
+ m_fetched = FontResourceHelper::create(resource.release());
} else {
// FIXME: CSSFontFaceSrcValue::fetch is invoked when @font-face rule
// is processed by StyleResolver / StyleEngine.
restoreCachedResourceIfNeeded(document);
}
- return m_fetched.get();
+ return m_fetched->resource();
}
void CSSFontFaceSrcValue::restoreCachedResourceIfNeeded(Document* document)
@@ -113,9 +116,9 @@ void CSSFontFaceSrcValue::restoreCachedResourceIfNeeded(Document* document)
FetchRequest request(ResourceRequest(resourceURL), FetchInitiatorTypeNames::css);
request.setContentSecurityCheck(m_shouldCheckContentSecurityPolicy);
- MixedContentChecker::shouldBlockFetch(document->frame(), m_fetched->lastResourceRequest(),
- m_fetched->lastResourceRequest().url(), MixedContentChecker::SendReport);
- document->fetcher()->requestLoadStarted(m_fetched.get(), request, ResourceFetcher::ResourceLoadingFromCache);
+ MixedContentChecker::shouldBlockFetch(document->frame(), m_fetched->resource()->lastResourceRequest(),
+ m_fetched->resource()->lastResourceRequest().url(), MixedContentChecker::SendReport);
+ document->fetcher()->requestLoadStarted(m_fetched->resource(), request, ResourceFetcher::ResourceLoadingFromCache);
}
bool CSSFontFaceSrcValue::equals(const CSSFontFaceSrcValue& other) const
« no previous file with comments | « third_party/WebKit/Source/core/css/CSSFontFaceSrcValue.h ('k') | third_party/WebKit/Source/core/css/CSSImageSetValue.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698