summaryrefslogtreecommitdiffstats
path: root/chrome/browser/nacl_host/nacl_broker_service.h
diff options
context:
space:
mode:
authorgregoryd@google.com <gregoryd@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2010-03-05 17:27:12 +0000
committergregoryd@google.com <gregoryd@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2010-03-05 17:27:12 +0000
commitc891d223b30349e9b4c475effd329e1e74e681ce (patch)
treee33ccedefc2240db25370a0d8a21748c286c0064 /chrome/browser/nacl_host/nacl_broker_service.h
parent207c678c4692c9dfec3e34c0d206f2ee1b2fbb6a (diff)
downloadchromium_src-c891d223b30349e9b4c475effd329e1e74e681ce.zip
chromium_src-c891d223b30349e9b4c475effd329e1e74e681ce.tar.gz
chromium_src-c891d223b30349e9b4c475effd329e1e74e681ce.tar.bz2
Terminate NaCl broker process when no loader processes are running
BUG=none TEST=none Review URL: http://codereview.chromium.org/669019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@40744 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/nacl_host/nacl_broker_service.h')
-rw-r--r--chrome/browser/nacl_host/nacl_broker_service.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/chrome/browser/nacl_host/nacl_broker_service.h b/chrome/browser/nacl_host/nacl_broker_service.h
index 75e089d..8518cd4 100644
--- a/chrome/browser/nacl_host/nacl_broker_service.h
+++ b/chrome/browser/nacl_host/nacl_broker_service.h
@@ -36,6 +36,12 @@ class NaClBrokerService {
void OnLoaderLaunched(const std::wstring& channel_id,
base::ProcessHandle handle);
+ // Called by NaClProcessHost when a loader process is terminated
+ void OnLoaderDied();
+
+ // Called by NaClBrokerHost when the broker process is terminated.
+ void OnBrokerDied();
+
private:
typedef std::map<std::wstring, NaClProcessHost*>
PendingLaunchesMap;
@@ -47,6 +53,7 @@ class NaClBrokerService {
bool broker_started_;
scoped_ptr<NaClBrokerHost> broker_host_;
+ int loaders_running_;
bool initialized_;
ResourceDispatcherHost* resource_dispatcher_host_;
PendingLaunchesMap pending_launches_;