Index: components/nacl/browser/nacl_host_message_filter.cc |
diff --git a/components/nacl/browser/nacl_host_message_filter.cc b/components/nacl/browser/nacl_host_message_filter.cc |
index e4737660ad3634a5b75480d48b640eea55089e7f..97746ac594d59c0d629145401879022445ae53a7 100644 |
--- a/components/nacl/browser/nacl_host_message_filter.cc |
+++ b/components/nacl/browser/nacl_host_message_filter.cc |
@@ -152,6 +152,7 @@ void NaClHostMessageFilter::LaunchNaClContinuation( |
}; |
base::PlatformFile nexe_file; |
+ scoped_ptr<base::File[]> resource_files; |
#if defined(OS_WIN) |
// Duplicate the nexe file handle from the renderer process into the browser |
// process. |
@@ -169,9 +170,17 @@ void NaClHostMessageFilter::LaunchNaClContinuation( |
Send(reply_msg); |
return; |
} |
+ // TODO(yusukes): Support pre-opening resource files. |
+ CHECK(launch_params.resource_files.empty()); |
+ CHECK(launch_params.resource_keys.empty()); |
#elif defined(OS_POSIX) |
nexe_file = |
IPC::PlatformFileForTransitToPlatformFile(launch_params.nexe_file); |
+ resource_files.reset(new base::File[launch_params.resource_files.size()]); |
+ for (size_t i = 0; i < launch_params.resource_files.size(); ++i) { |
+ resource_files[i] = base::File(IPC::PlatformFileForTransitToPlatformFile( |
+ launch_params.resource_files[i])); |
+ } |
#else |
#error Unsupported platform. |
#endif |
@@ -180,6 +189,9 @@ void NaClHostMessageFilter::LaunchNaClContinuation( |
GURL(launch_params.manifest_url), |
base::File(nexe_file), |
nexe_token, |
+ resource_files.Pass(), |
+ launch_params.resource_file_tokens, |
+ launch_params.resource_keys, |
permissions, |
launch_params.render_view_id, |
launch_params.permission_bits, |
@@ -284,11 +296,13 @@ void NaClHostMessageFilter::OnMissingArchError(int render_view_id) { |
ShowMissingArchInfobar(render_process_id_, render_view_id); |
} |
-void NaClHostMessageFilter::OnOpenNaClExecutable(int render_view_id, |
- const GURL& file_url, |
- IPC::Message* reply_msg) { |
+void NaClHostMessageFilter::OnOpenNaClExecutable( |
+ int render_view_id, |
+ const GURL& file_url, |
+ const std::vector<GURL>& resource_urls, |
+ IPC::Message* reply_msg) { |
nacl_file_host::OpenNaClExecutable(this, render_view_id, file_url, |
- reply_msg); |
+ resource_urls, reply_msg); |
} |
void NaClHostMessageFilter::OnNaClDebugEnabledForURL(const GURL& nmf_url, |