diff options
author | bradnelson@google.com <bradnelson@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-01-10 02:12:59 +0000 |
---|---|---|
committer | bradnelson@google.com <bradnelson@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-01-10 02:12:59 +0000 |
commit | bb4ee2d0dbd93022e7351fe1a65239f087a978a4 (patch) | |
tree | 0004ead657800556ce18f35558db650919d4e60e /content/public | |
parent | d981c5e59bfbe696dd1699141a100d86e33b673a (diff) | |
download | chromium_src-bb4ee2d0dbd93022e7351fe1a65239f087a978a4.zip chromium_src-bb4ee2d0dbd93022e7351fe1a65239f087a978a4.tar.gz chromium_src-bb4ee2d0dbd93022e7351fe1a65239f087a978a4.tar.bz2 |
Allow multiple NaCl modules to be debugged.
Assigning the first NaCl module to load to port 4014, allowing other to be
dynamic, using a code path currently used for testing.
Expose the port used by each module in the Task Manager UI to make it available
to users debugging NaCl modules.
Follow on changes will add extension api fields to make debuggable modules
discoverable to a web based debugger.
NOTE: The debug stub port on windows is opened at a different layer (inside nacl, only availabled with --disable-sandbox). This will be exposed in a follow on change.
Reviewers:
yoshiki@chromium.org (for task_manager)
pkasting@chromium.org (for browser/ui)
brettw@chromium.org (for content)
noelallen@chromium.org (for nacl)
BUG=328714
TEST=trybots
R=yoshiki@chromium.org,pkasting@chromium.org,brettw@chromium.org,noelallen@chromium.org
Review URL: https://codereview.chromium.org/102073008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@244041 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content/public')
-rw-r--r-- | content/public/browser/browser_child_process_host.h | 3 | ||||
-rw-r--r-- | content/public/browser/child_process_data.h | 5 |
2 files changed, 7 insertions, 1 deletions
diff --git a/content/public/browser/browser_child_process_host.h b/content/public/browser/browser_child_process_host.h index 7776a0d..182dd8d 100644 --- a/content/public/browser/browser_child_process_host.h +++ b/content/public/browser/browser_child_process_host.h @@ -77,6 +77,9 @@ class CONTENT_EXPORT BrowserChildProcessHost : public IPC::Sender { // this object. virtual void SetHandle(base::ProcessHandle handle) = 0; + // Set the nacl debug stub port of the process. + virtual void SetNaClDebugStubPort(int port) = 0; + #if defined(OS_MACOSX) && !defined(OS_IOS) // Returns a PortProvider used to get process metrics for child processes. static base::ProcessMetrics::PortProvider* GetPortProvider(); diff --git a/content/public/browser/child_process_data.h b/content/public/browser/child_process_data.h index 3683be9..2807657 100644 --- a/content/public/browser/child_process_data.h +++ b/content/public/browser/child_process_data.h @@ -28,8 +28,11 @@ struct ChildProcessData { // The handle to the process. base::ProcessHandle handle; + int nacl_debug_stub_port; + explicit ChildProcessData(int process_type) - : process_type(process_type), id(0), handle(base::kNullProcessHandle) { + : process_type(process_type), id(0), handle(base::kNullProcessHandle), + nacl_debug_stub_port(0) { } }; |