diff options
author | mirandac@chromium.org <mirandac@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-06-18 23:02:54 +0000 |
---|---|---|
committer | mirandac@chromium.org <mirandac@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-06-18 23:02:54 +0000 |
commit | ea0c98cfa2849f95bf40238c9f476c9cebb22244 (patch) | |
tree | ec81fe0c664cb6c0adddbd5d392313e8fbb93ec5 /chrome/browser/utility_process_host.cc | |
parent | 1f70f0ca51d1c61d3a775507b2b69dcdf60e77df (diff) | |
download | chromium_src-ea0c98cfa2849f95bf40238c9f476c9cebb22244.zip chromium_src-ea0c98cfa2849f95bf40238c9f476c9cebb22244.tar.gz chromium_src-ea0c98cfa2849f95bf40238c9f476c9cebb22244.tar.bz2 |
First draft of web resource service; fetches data from a JSON feed
and stores it in user prefs, where it can be used by the new tab page.
BUG = http://crbug.com/13363
Review URL: http://codereview.chromium.org/125052
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18766 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/utility_process_host.cc')
-rw-r--r-- | chrome/browser/utility_process_host.cc | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/chrome/browser/utility_process_host.cc b/chrome/browser/utility_process_host.cc index 5dad2c5..e515eeb 100644 --- a/chrome/browser/utility_process_host.cc +++ b/chrome/browser/utility_process_host.cc @@ -37,6 +37,14 @@ bool UtilityProcessHost::StartExtensionUnpacker(const FilePath& extension) { return true; } +bool UtilityProcessHost::StartWebResourceUnpacker(const std::string& data) { + if (!StartProcess(FilePath())) + return false; + + Send(new UtilityMsg_UnpackWebResource(data)); + return true; +} + bool UtilityProcessHost::StartProcess(const FilePath& exposed_dir) { if (!CreateChannel()) return false; @@ -56,7 +64,10 @@ bool UtilityProcessHost::StartProcess(const FilePath& exposed_dir) { base::ProcessHandle process; #if defined(OS_WIN) - process = sandbox::StartProcessWithAccess(&cmd_line, exposed_dir); + if (exposed_dir.empty()) + process = sandbox::StartProcess(&cmd_line); + else + process = sandbox::StartProcessWithAccess(&cmd_line, exposed_dir); #else // TODO(port): sandbox base::LaunchApp(cmd_line, false, false, &process); @@ -89,5 +100,9 @@ void UtilityProcessHost::Client::OnMessageReceived( Client::OnUnpackExtensionSucceeded) IPC_MESSAGE_HANDLER(UtilityHostMsg_UnpackExtension_Failed, Client::OnUnpackExtensionFailed) + IPC_MESSAGE_HANDLER(UtilityHostMsg_UnpackWebResource_Succeeded, + Client::OnUnpackWebResourceSucceeded) + IPC_MESSAGE_HANDLER(UtilityHostMsg_UnpackWebResource_Failed, + Client::OnUnpackWebResourceFailed) IPC_END_MESSAGE_MAP_EX() } |