Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(396)

Side by Side Diff: components/nacl/browser/nacl_process_host.cc

Issue 100373005: Initial implementation of Bare Metal Mode for NaCl. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 "components/nacl/browser/nacl_process_host.h" 5 #include "components/nacl/browser/nacl_process_host.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <string> 8 #include <string>
9 #include <vector> 9 #include <vector>
10 10
(...skipping 690 matching lines...) Expand 10 before | Expand all | Expand 10 after
701 params.validation_cache_enabled = nacl_browser->ValidationCacheIsEnabled(); 701 params.validation_cache_enabled = nacl_browser->ValidationCacheIsEnabled();
702 params.validation_cache_key = nacl_browser->GetValidationCacheKey(); 702 params.validation_cache_key = nacl_browser->GetValidationCacheKey();
703 params.version = NaClBrowser::GetDelegate()->GetVersionString(); 703 params.version = NaClBrowser::GetDelegate()->GetVersionString();
704 params.enable_exception_handling = enable_exception_handling_; 704 params.enable_exception_handling = enable_exception_handling_;
705 params.enable_debug_stub = enable_debug_stub_ && 705 params.enable_debug_stub = enable_debug_stub_ &&
706 NaClBrowser::GetDelegate()->URLMatchesDebugPatterns(manifest_url_); 706 NaClBrowser::GetDelegate()->URLMatchesDebugPatterns(manifest_url_);
707 // Enable PPAPI proxy channel creation only for renderer processes. 707 // Enable PPAPI proxy channel creation only for renderer processes.
708 params.enable_ipc_proxy = enable_ppapi_proxy(); 708 params.enable_ipc_proxy = enable_ppapi_proxy();
709 params.uses_irt = uses_irt_; 709 params.uses_irt = uses_irt_;
710 params.enable_dyncode_syscalls = enable_dyncode_syscalls_; 710 params.enable_dyncode_syscalls = enable_dyncode_syscalls_;
711 params.enable_nonsfi_mode = CommandLine::ForCurrentProcess()->HasSwitch(
712 switches::kEnableNaClNonSfiMode);
711 713
712 const ChildProcessData& data = process_->GetData(); 714 const ChildProcessData& data = process_->GetData();
713 if (!ShareHandleToSelLdr(data.handle, 715 if (!ShareHandleToSelLdr(data.handle,
714 internal_->socket_for_sel_ldr, true, 716 internal_->socket_for_sel_ldr, true,
715 &params.handles)) { 717 &params.handles)) {
716 return false; 718 return false;
717 } 719 }
718 720
719 if (params.uses_irt) { 721 if (params.uses_irt) {
720 base::PlatformFile irt_file = nacl_browser->IrtFile(); 722 base::PlatformFile irt_file = nacl_browser->IrtFile();
(...skipping 294 matching lines...) Expand 10 before | Expand all | Expand 10 after
1015 process_handle.Take(), info, 1017 process_handle.Take(), info,
1016 base::MessageLoopProxy::current(), 1018 base::MessageLoopProxy::current(),
1017 base::Bind(&NaClProcessHost::OnDebugExceptionHandlerLaunchedByBroker, 1019 base::Bind(&NaClProcessHost::OnDebugExceptionHandlerLaunchedByBroker,
1018 weak_factory_.GetWeakPtr())); 1020 weak_factory_.GetWeakPtr()));
1019 return true; 1021 return true;
1020 } 1022 }
1021 } 1023 }
1022 #endif 1024 #endif
1023 1025
1024 } // namespace nacl 1026 } // namespace nacl
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698