Chromium Code Reviews| Index: chrome/test/chromedriver/logging.cc |
| diff --git a/chrome/test/chromedriver/logging.cc b/chrome/test/chromedriver/logging.cc |
| index 67f60e4acff040e479f71ccc41daaa2c4ebed961..a38ba95b53690fa8b5d9fa00d91a9faf764e4e91 100644 |
| --- a/chrome/test/chromedriver/logging.cc |
| +++ b/chrome/test/chromedriver/logging.cc |
| @@ -96,11 +96,19 @@ bool InternalIsVLogOn(int vlog_level) { |
| return GetLevelFromSeverity(vlog_level * -1) >= level; |
| } |
| -bool HandleLogMessage(int severity, |
| - const char* file, |
| - int line, |
| - size_t message_start, |
| - const std::string& str) { |
| +class LogMessageHandler : logging::LogMessageHandler { |
| + bool OnMessage(int severity, |
| + const char* file, |
| + int line, |
| + size_t message_start, |
| + const std::string& str) override; |
| +}; |
| + |
| +bool LogMessageHandler::OnMessage(int severity, |
| + const char* file, |
| + int line, |
| + size_t message_start, |
| + const std::string& str) { |
| Log::Level level = GetLevelFromSeverity(severity); |
| std::string message = str.substr(message_start); |
| @@ -237,7 +245,8 @@ bool InitLogging() { |
| false, // enable_thread_id |
| false, // enable_timestamp |
| false); // enable_tickcount |
| - logging::SetLogMessageHandler(&HandleLogMessage); |
| + auto* handler = new LogMessageHandler(); // Intentionally leak this instance. |
| + CHECK(handler); |
|
brettw
2016/11/14 22:01:31
Normally we wouldn't bother asserting the malloc r
wychen
2016/11/18 21:14:00
Done.
|
| logging::LoggingSettings logging_settings; |
| logging_settings.logging_dest = logging::LOG_TO_SYSTEM_DEBUG_LOG; |