| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "build/build_config.h" | 5 #include "build/build_config.h" |
| 6 | 6 |
| 7 #include "chrome/browser/nacl_host/nacl_process_host.h" | 7 #include "chrome/browser/nacl_host/nacl_process_host.h" |
| 8 | 8 |
| 9 #if defined(OS_POSIX) | 9 #if defined(OS_POSIX) |
| 10 #include <fcntl.h> | 10 #include <fcntl.h> |
| (...skipping 246 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 257 } else { | 257 } else { |
| 258 FilePath plugin_dir; | 258 FilePath plugin_dir; |
| 259 if (!PathService::Get(chrome::DIR_INTERNAL_PLUGINS, &plugin_dir)) { | 259 if (!PathService::Get(chrome::DIR_INTERNAL_PLUGINS, &plugin_dir)) { |
| 260 LOG(ERROR) << "Failed to locate the plugins directory"; | 260 LOG(ERROR) << "Failed to locate the plugins directory"; |
| 261 delete this; | 261 delete this; |
| 262 return; | 262 return; |
| 263 } | 263 } |
| 264 irt_path = plugin_dir.Append(GetIrtLibraryFilename()); | 264 irt_path = plugin_dir.Append(GetIrtLibraryFilename()); |
| 265 } | 265 } |
| 266 | 266 |
| 267 base::FileUtilProxy::CreateOrOpenCallback callback = | |
| 268 base::Bind(&NaClProcessHost::OpenIrtFileDone, weak_factory_.GetWeakPtr()); | |
| 269 if (!base::FileUtilProxy::CreateOrOpen( | 267 if (!base::FileUtilProxy::CreateOrOpen( |
| 270 BrowserThread::GetMessageLoopProxyForThread(BrowserThread::FILE), | 268 BrowserThread::GetMessageLoopProxyForThread(BrowserThread::FILE), |
| 271 irt_path, | 269 irt_path, |
| 272 base::PLATFORM_FILE_OPEN | base::PLATFORM_FILE_READ, | 270 base::PLATFORM_FILE_OPEN | base::PLATFORM_FILE_READ, |
| 273 callback)) { | 271 base::Bind(&NaClProcessHost::OpenIrtFileDone, |
| 272 weak_factory_.GetWeakPtr()))) { |
| 274 delete this; | 273 delete this; |
| 275 } | 274 } |
| 276 } | 275 } |
| 277 | 276 |
| 278 void NaClProcessHost::OpenIrtFileDone(base::PlatformFileError error_code, | 277 void NaClProcessHost::OpenIrtFileDone(base::PlatformFileError error_code, |
| 279 base::PassPlatformFile file, | 278 base::PassPlatformFile file, |
| 280 bool created) { | 279 bool created) { |
| 281 std::vector<nacl::FileDescriptor> handles_for_renderer; | 280 std::vector<nacl::FileDescriptor> handles_for_renderer; |
| 282 base::ProcessHandle nacl_process_handle; | 281 base::ProcessHandle nacl_process_handle; |
| 283 bool have_irt_file = false; | 282 bool have_irt_file = false; |
| (...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 397 } | 396 } |
| 398 | 397 |
| 399 bool NaClProcessHost::OnMessageReceived(const IPC::Message& msg) { | 398 bool NaClProcessHost::OnMessageReceived(const IPC::Message& msg) { |
| 400 NOTREACHED() << "Invalid message with type = " << msg.type(); | 399 NOTREACHED() << "Invalid message with type = " << msg.type(); |
| 401 return false; | 400 return false; |
| 402 } | 401 } |
| 403 | 402 |
| 404 bool NaClProcessHost::CanShutdown() { | 403 bool NaClProcessHost::CanShutdown() { |
| 405 return true; | 404 return true; |
| 406 } | 405 } |
| OLD | NEW |