| Index: chrome/common/logging_chrome.cc
|
| diff --git a/chrome/common/logging_chrome.cc b/chrome/common/logging_chrome.cc
|
| index e9e51b130ea2b85aa63275000f81fbe022f939cd..6a5d7f88ee0674418f30f65cbb50e248045e7bbb 100644
|
| --- a/chrome/common/logging_chrome.cc
|
| +++ b/chrome/common/logging_chrome.cc
|
| @@ -69,6 +69,7 @@ namespace {
|
|
|
| // When true, this means that error dialogs should not be shown.
|
| bool dialogs_are_suppressed_ = false;
|
| +logging::ScopedLogAssertHandler* assert_handler_ = nullptr;
|
|
|
| // This should be true for exactly the period between the end of
|
| // InitChromeLogging() and the beginning of CleanupChromeLogging().
|
| @@ -92,7 +93,10 @@ const GUID kChromeTraceProviderName = {
|
| // silenced. To record a new error, pass the log string associated
|
| // with that error in the str parameter.
|
| MSVC_DISABLE_OPTIMIZE();
|
| -void SilentRuntimeAssertHandler(const std::string& str) {
|
| +void SilentRuntimeAssertHandler(const char* file,
|
| + int line,
|
| + const base::StringPiece message,
|
| + const base::StringPiece stack_trace) {
|
| base::debug::BreakDebugger();
|
| }
|
| MSVC_ENABLE_OPTIMIZE();
|
| @@ -103,7 +107,8 @@ void SuppressDialogs() {
|
| if (dialogs_are_suppressed_)
|
| return;
|
|
|
| - logging::SetLogAssertHandler(SilentRuntimeAssertHandler);
|
| + assert_handler_ = new logging::ScopedLogAssertHandler(
|
| + base::Bind(SilentRuntimeAssertHandler));
|
|
|
| #if defined(OS_WIN)
|
| UINT new_flags = SEM_FAILCRITICALERRORS |
|
|
|