Index: content/public/test/mock_render_process_host.cc |
diff --git a/content/public/test/mock_render_process_host.cc b/content/public/test/mock_render_process_host.cc |
index d877d443356d23767f3543f21449683845557195..3e02eca9fae5e84691411729e5f3c0ef5d73b120 100644 |
--- a/content/public/test/mock_render_process_host.cc |
+++ b/content/public/test/mock_render_process_host.cc |
@@ -251,10 +251,14 @@ RenderProcessHost* MockRenderProcessHostFactory::CreateRenderProcessHost( |
processes_.push_back(host); |
host->SetFactory(this); |
} |
+ FOR_EACH_OBSERVER(Observer, observer_list_, |
+ OnRenderProcessHostCreated(host)); |
return host; |
} |
void MockRenderProcessHostFactory::Remove(MockRenderProcessHost* host) const { |
+ FOR_EACH_OBSERVER(Observer, observer_list_, |
+ OnRenderProcessHostDestroyed(host)); |
for (ScopedVector<MockRenderProcessHost>::iterator it = processes_.begin(); |
it != processes_.end(); ++it) { |
if (*it == host) { |
@@ -264,4 +268,14 @@ void MockRenderProcessHostFactory::Remove(MockRenderProcessHost* host) const { |
} |
} |
+MockRenderProcessHostFactory::Observer::Observer( |
+ MockRenderProcessHostFactory* factory) |
+ : factory_(factory) { |
+ factory->AddObserver(this); |
+} |
+ |
+MockRenderProcessHostFactory::Observer::~Observer() { |
+ factory_->RemoveObserver(this); |
+} |
+ |
} // content |