diff options
author | jam@chromium.org <jam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-04-29 22:34:54 +0000 |
---|---|---|
committer | jam@chromium.org <jam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-04-29 22:34:54 +0000 |
commit | b94497b03839edf6eb27cb9413e9410ccdf0ef97 (patch) | |
tree | 9310b3b1f529c8bc70d7d9b5e906a3b2514fc320 /content | |
parent | 53d2dc94d5063c270c6e9509f3b33935400f0f24 (diff) | |
download | chromium_src-b94497b03839edf6eb27cb9413e9410ccdf0ef97.zip chromium_src-b94497b03839edf6eb27cb9413e9410ccdf0ef97.tar.gz chromium_src-b94497b03839edf6eb27cb9413e9410ccdf0ef97.tar.bz2 |
Fix race condition when OnProcessLaunched is called after RenderProcessHost calls DeleteSoon on itself.
BUG=cros:14514
Review URL: http://codereview.chromium.org/6883276
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@83609 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content')
-rw-r--r-- | content/browser/renderer_host/browser_render_process_host.cc | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/content/browser/renderer_host/browser_render_process_host.cc b/content/browser/renderer_host/browser_render_process_host.cc index 6194ff8..eeb7d9f 100644 --- a/content/browser/renderer_host/browser_render_process_host.cc +++ b/content/browser/renderer_host/browser_render_process_host.cc @@ -935,6 +935,13 @@ void BrowserRenderProcessHost::SetBackgrounded(bool backgrounded) { } void BrowserRenderProcessHost::OnProcessLaunched() { + // No point doing anything, since this object will be destructed soon. We + // especially don't want to send the RENDERER_PROCESS_CREATED notification, + // since some clients might expect a RENDERER_PROCESS_TERMINATED afterwards to + // properly cleanup. + if (deleting_soon_) + return; + if (child_process_launcher_.get()) child_process_launcher_->SetProcessBackgrounded(backgrounded_); |