Index: chrome/browser/profiles/profile_impl.cc |
diff --git a/chrome/browser/profiles/profile_impl.cc b/chrome/browser/profiles/profile_impl.cc |
index c25044026b468e8167c3baa07fc7a02a1390e6ed..6174ea0c8065a9f84c606a0cdf09be6d513d3f26 100644 |
--- a/chrome/browser/profiles/profile_impl.cc |
+++ b/chrome/browser/profiles/profile_impl.cc |
@@ -341,10 +341,13 @@ ProfileImpl::ProfileImpl(const FilePath& path) |
extensions_cookie_path = |
extensions_cookie_path.Append(chrome::kExtensionsCookieFilename); |
+ FilePath app_path = GetPath().Append(chrome::kIsolatedAppStateDirname); |
+ |
// Make sure we initialize the ProfileIOData after everything else has been |
// initialized that we might be reading from the IO thread. |
io_data_.Init(cookie_path, cache_path, cache_max_size, |
- media_cache_path, media_cache_max_size, extensions_cookie_path); |
+ media_cache_path, media_cache_max_size, extensions_cookie_path, |
+ app_path); |
// Initialize the ProfilePolicyConnector after |io_data_| since it requires |
// the URLRequestContextGetter to be initialized. |
@@ -821,6 +824,17 @@ URLRequestContextGetter* ProfileImpl::GetRequestContext() { |
return request_context; |
} |
+URLRequestContextGetter* ProfileImpl::GetRequestContextForPossibleApp( |
+ const Extension* installed_app) { |
+ if (CommandLine::ForCurrentProcess()->HasSwitch( |
+ switches::kEnableExperimentalAppManifests) && |
+ installed_app != NULL && |
+ installed_app->is_storage_isolated()) |
+ return GetRequestContextForIsolatedApp(installed_app->id()); |
+ |
+ return GetRequestContext(); |
+} |
+ |
URLRequestContextGetter* ProfileImpl::GetRequestContextForMedia() { |
return io_data_.GetMediaRequestContextGetter(); |
} |
@@ -838,6 +852,11 @@ URLRequestContextGetter* ProfileImpl::GetRequestContextForExtensions() { |
return io_data_.GetExtensionsRequestContextGetter(); |
} |
+URLRequestContextGetter* ProfileImpl::GetRequestContextForIsolatedApp( |
+ std::string app_id) { |
+ return io_data_.GetIsolatedAppRequestContextGetter(app_id); |
+} |
+ |
void ProfileImpl::RegisterExtensionWithRequestContexts( |
const Extension* extension) { |
BrowserThread::PostTask( |