Index: net/test/scoped_disable_exit_on_dfatal.cc |
diff --git a/net/test/scoped_disable_exit_on_dfatal.cc b/net/test/scoped_disable_exit_on_dfatal.cc |
index 14821db8c389ab4e2300f057e955a1eb3f6f868d..f9091261bc56464288820ade1caeb3b90d0bad73 100644 |
--- a/net/test/scoped_disable_exit_on_dfatal.cc |
+++ b/net/test/scoped_disable_exit_on_dfatal.cc |
@@ -4,24 +4,28 @@ |
#include "net/test/scoped_disable_exit_on_dfatal.h" |
-#include "base/bind.h" |
#include "base/logging.h" |
-#include "base/strings/string_piece.h" |
namespace net { |
namespace test { |
-ScopedDisableExitOnDFatal::ScopedDisableExitOnDFatal() |
- : assert_handler_(base::Bind(LogAssertHandler)) {} |
+// static |
+ScopedDisableExitOnDFatal* ScopedDisableExitOnDFatal::g_instance_ = NULL; |
-ScopedDisableExitOnDFatal::~ScopedDisableExitOnDFatal() {} |
+ScopedDisableExitOnDFatal::ScopedDisableExitOnDFatal() { |
+ CHECK(!g_instance_); |
+ g_instance_ = this; |
+ logging::SetLogAssertHandler(LogAssertHandler); |
+} |
+ |
+ScopedDisableExitOnDFatal::~ScopedDisableExitOnDFatal() { |
+ CHECK_EQ(g_instance_, this); |
+ logging::SetLogAssertHandler(NULL); |
+ g_instance_ = NULL; |
+} |
// static |
-void ScopedDisableExitOnDFatal::LogAssertHandler( |
- const char* file, |
- int line, |
- const base::StringPiece message, |
- const base::StringPiece stack_trace) { |
+void ScopedDisableExitOnDFatal::LogAssertHandler(const std::string& str) { |
// Simply swallow the assert. |
} |