Commit e910654a authored by Lukasz Anforowicz's avatar Lukasz Anforowicz Committed by Commit Bot

Disallow renderer crashes after RenderProcessHostWatcher::Wait().

After this CL renderer crashes won't be allowed after
RenderProcessHostWatcher::Wait returns.

Note that even before this CL, RenderProcessHostWatcher could only be
used once (i.e. for one process exit).  In particular,
|std::move(quit_closure_).Run()| would have hit a DCHECK when run a
second time.

Fixed: 1052257
Change-Id: Id1cbd9f59de57d5fe51131a5c7ac5ee14302d0d7
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2068950
Commit-Queue: Avi Drissman <avi@chromium.org>
Auto-Submit: Łukasz Anforowicz <lukasza@chromium.org>
Reviewed-by: default avatarAvi Drissman <avi@chromium.org>
Cr-Commit-Position: refs/heads/master@{#743990}
parent e458db7e
...@@ -2386,6 +2386,10 @@ RenderProcessHostWatcher::~RenderProcessHostWatcher() { ...@@ -2386,6 +2386,10 @@ RenderProcessHostWatcher::~RenderProcessHostWatcher() {
void RenderProcessHostWatcher::Wait() { void RenderProcessHostWatcher::Wait() {
run_loop_.Run(); run_loop_.Run();
DCHECK(allow_renderer_crashes_)
<< "RenderProcessHostWatcher::Wait() may only be called once";
allow_renderer_crashes_.reset();
} }
void RenderProcessHostWatcher::RenderProcessReady(RenderProcessHost* host) { void RenderProcessHostWatcher::RenderProcessReady(RenderProcessHost* host) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment