| Index: android_webview/crash_reporter/aw_microdump_crash_reporter.cc
|
| diff --git a/android_webview/crash_reporter/aw_microdump_crash_reporter.cc b/android_webview/crash_reporter/aw_microdump_crash_reporter.cc
|
| index 490cd9b7de7df929be54e441b5d5d16d774c861b..016288a9c672769c3e846a1a3c6ff3327c8addaa 100644
|
| --- a/android_webview/crash_reporter/aw_microdump_crash_reporter.cc
|
| +++ b/android_webview/crash_reporter/aw_microdump_crash_reporter.cc
|
| @@ -5,6 +5,7 @@
|
| #include "android_webview/crash_reporter/aw_microdump_crash_reporter.h"
|
|
|
| #include "base/lazy_instance.h"
|
| +#include "build/build_config.h"
|
| #include "components/crash/app/breakpad_linux.h"
|
| #include "components/crash/app/crash_reporter_client.h"
|
|
|
| @@ -38,6 +39,13 @@ bool g_enabled = false;
|
| } // namespace
|
|
|
| void EnableMicrodumpCrashReporter() {
|
| +#if defined(ARCH_CPU_X86_FAMILY)
|
| + // Don't install signal handler on X86/64 because this breaks binary
|
| + // translators that handle SIGSEGV in userspace and get chained after our
|
| + // handler. See crbug.com/477444
|
| + return;
|
| +#endif
|
| +
|
| if (g_enabled) {
|
| NOTREACHED() << "EnableMicrodumpCrashReporter called more than once";
|
| return;
|
|
|