Add an observer interface to CrashHandlerHost

This interface allows interested classes, including
AwBrowserTerminator, ChromeStabilityMetricsProvider,
OutOfMemoryReporter, and DataReductionProxyPingbackClientImpl to
distinguish between child process crashes and kills on Android.
Previously, this was done by either passing a file descriptor to the
child process (AwBrowserTerminator) or by observing whether a crash
dump was successfully produced. This eliminates the need for the extra
descriptor for AwBrowserTerminator, as well as providing a more
accurate signal for classes that relied on checking for a crash dump.

Observers can use this interface in combination with observing child
process exits/disconnects. If an observer sees a child process
disconnect without having observed a crash signal for the child, it
can deduce that the child was killed.

Bug: crashpad:30
Change-Id: I6213d31f30d15b30d2a3987fe95229042371938b
Reviewed-on: https://chromium-review.googlesource.com/1026085
Commit-Queue: Joshua Peraza <jperaza@chromium.org>
Reviewed-by: Robert Sesek <rsesek@chromium.org>
Cr-Commit-Position: refs/heads/master@{#553715}
3 files changed