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

Unified Diff: content/browser/appcache/appcache_url_loader_job.cc

Issue 2982363002: Add support for fallback content for the frame. This includes main and subframes. (Closed)
Patch Set: rebase to tip Created 3 years, 5 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: content/browser/appcache/appcache_url_loader_job.cc
diff --git a/content/browser/appcache/appcache_url_loader_job.cc b/content/browser/appcache/appcache_url_loader_job.cc
index c6594d1595d35c3b0709549f105f02075c5c6c8a..5679b7a19128911a16a88b612aca9b68c35e9fd6 100644
--- a/content/browser/appcache/appcache_url_loader_job.cc
+++ b/content/browser/appcache/appcache_url_loader_job.cc
@@ -223,16 +223,20 @@ void AppCacheURLLoaderJob::SetSubresourceLoadInfo(
default_url_loader_factory_getter_ = default_url_loader;
}
-void AppCacheURLLoaderJob::Start(mojom::URLLoaderRequest request,
- mojom::URLLoaderClientPtr client) {
+void AppCacheURLLoaderJob::BindRequest(mojom::URLLoaderClientPtr client,
+ mojom::URLLoaderRequest request) {
DCHECK(!binding_.is_bound());
binding_.Bind(std::move(request));
+ client_ = std::move(client);
+
binding_.set_connection_error_handler(base::Bind(
&AppCacheURLLoaderJob::OnConnectionError, StaticAsWeakPtr(this)));
+}
- client_ = std::move(client);
-
+void AppCacheURLLoaderJob::Start(mojom::URLLoaderRequest request,
+ mojom::URLLoaderClientPtr client) {
+ BindRequest(std::move(client), std::move(request));
// Send the cached AppCacheResponse if any.
if (info_.get())
SendResponseInfo();
@@ -271,8 +275,8 @@ void AppCacheURLLoaderJob::OnResponseInfoLoaded(
if (is_range_request())
SetupRangeResponse();
- if (IsResourceTypeFrame(request_.resource_type)) {
- DCHECK(!main_resource_loader_callback_.is_null());
+ if (IsResourceTypeFrame(request_.resource_type) &&
+ main_resource_loader_callback_) {
std::move(main_resource_loader_callback_)
.Run(base::Bind(&AppCacheURLLoaderJob::Start, StaticAsWeakPtr(this)));
}
« no previous file with comments | « content/browser/appcache/appcache_url_loader_job.h ('k') | content/browser/loader/navigation_url_loader_network_service.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698