| Index: chrome/browser/browser_process_impl.cc
|
| diff --git a/chrome/browser/browser_process_impl.cc b/chrome/browser/browser_process_impl.cc
|
| index 5ec7f984898a06b53aa354c26d737117ecc37c54..c1696a5993c2fa70abdafce402514c197002273a 100644
|
| --- a/chrome/browser/browser_process_impl.cc
|
| +++ b/chrome/browser/browser_process_impl.cc
|
| @@ -15,7 +15,9 @@
|
| #include "base/bind.h"
|
| #include "base/bind_helpers.h"
|
| #include "base/command_line.h"
|
| +#include "base/debug/alias.h"
|
| #include "base/debug/crash_logging.h"
|
| +#include "base/debug/dump_without_crashing.h"
|
| #include "base/debug/leak_annotations.h"
|
| #include "base/files/file_path.h"
|
| #include "base/location.h"
|
| @@ -1343,6 +1345,17 @@ void BrowserProcessImpl::Unpin() {
|
| __lsan_do_leak_check();
|
| #endif
|
|
|
| + // TODO(sammiequon): This is used to help debug the crash in crbug.com/660962.
|
| + // Remove this when the crash is fixed or if verified to not be related to
|
| + // this.
|
| + if (!base::MessageLoop::current()->is_running()) {
|
| + std::string debug_info = KeepAliveRegistry::GetInstance()->ToString();
|
| + char debug_buffer[100];
|
| + base::strlcpy(debug_buffer, debug_info.c_str(), arraysize(debug_buffer));
|
| + base::debug::Alias(&debug_buffer);
|
| + base::debug::DumpWithoutCrashing();
|
| + }
|
| +
|
| CHECK(base::MessageLoop::current()->is_running());
|
|
|
| #if defined(OS_MACOSX)
|
|
|