| Index: webkit/appcache/appcache_host.cc
|
| ===================================================================
|
| --- webkit/appcache/appcache_host.cc (revision 81647)
|
| +++ webkit/appcache/appcache_host.cc (working copy)
|
| @@ -1,4 +1,4 @@
|
| -// Copyright (c) 2010 The Chromium Authors. All rights reserved.
|
| +// Copyright (c) 2011 The Chromium Authors. All rights reserved.
|
| // Use of this source code is governed by a BSD-style license that can be
|
| // found in the LICENSE file.
|
|
|
| @@ -33,7 +33,9 @@
|
|
|
| AppCacheHost::AppCacheHost(int host_id, AppCacheFrontend* frontend,
|
| AppCacheService* service)
|
| - : host_id_(host_id), parent_host_id_(kNoHostId), parent_process_id_(0),
|
| + : host_id_(host_id),
|
| + spawning_host_id_(kNoHostId), spawning_process_id_(0),
|
| + parent_host_id_(kNoHostId), parent_process_id_(0),
|
| pending_main_resource_cache_id_(kNoCacheId),
|
| pending_selected_cache_id_(kNoCacheId),
|
| frontend_(frontend), service_(service),
|
| @@ -89,6 +91,7 @@
|
| // Note: The client detects if the document was not loaded using HTTP GET
|
| // and invokes SelectCache without a manifest url, so that detection step
|
| // is also skipped here. See WebApplicationCacheHostImpl.cc
|
| + set_preferred_manifest_url(manifest_url);
|
| new_master_entry_url_ = document_url;
|
| LoadOrCreateGroup(manifest_url);
|
| return;
|
| @@ -230,6 +233,17 @@
|
| pending_callback_param_ = NULL;
|
| }
|
|
|
| +void AppCacheHost::SetSpawningHostId(
|
| + int spawning_process_id, int spawning_host_id) {
|
| + spawning_process_id_ = spawning_process_id;
|
| + spawning_host_id_ = spawning_host_id;
|
| +}
|
| +
|
| +const AppCacheHost* AppCacheHost::GetSpawningHost() const {
|
| + AppCacheBackendImpl* backend = service_->GetBackend(spawning_process_id_);
|
| + return backend ? backend->GetHost(spawning_host_id_) : NULL;
|
| +}
|
| +
|
| AppCacheHost* AppCacheHost::GetParentAppCacheHost() const {
|
| DCHECK(is_for_dedicated_worker());
|
| AppCacheBackendImpl* backend = service_->GetBackend(parent_process_id_);
|
| @@ -338,6 +352,7 @@
|
| // context being navigated.
|
| DCHECK(cache->owning_group());
|
| DCHECK(new_master_entry_url_.is_empty());
|
| + DCHECK_EQ(cache->owning_group()->manifest_url(), preferred_manifest_url_);
|
| AppCacheGroup* owing_group = cache->owning_group();
|
| const char* kFormatString =
|
| "Document was loaded from Application Cache with manifest %s";
|
| @@ -358,6 +373,7 @@
|
| // resource from which document was loaded as the new master resourse.
|
| DCHECK(!group->is_obsolete());
|
| DCHECK(new_master_entry_url_.is_valid());
|
| + DCHECK_EQ(group->manifest_url(), preferred_manifest_url_);
|
| const char* kFormatString = group->HasCache() ?
|
| "Adding master entry to Application Cache with manifest %s" :
|
| "Creating Application Cache with manifest %s";
|
|
|