| Index: chrome/test/chromedriver/logging.cc
|
| diff --git a/chrome/test/chromedriver/logging.cc b/chrome/test/chromedriver/logging.cc
|
| index afd73754ca19963be1f6f74e75d15fdb070a88a6..cb7350ca86a691a0a71cf77c296edf1085038a28 100644
|
| --- a/chrome/test/chromedriver/logging.cc
|
| +++ b/chrome/test/chromedriver/logging.cc
|
| @@ -97,11 +97,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);
|
|
|
| @@ -238,7 +246,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);
|
|
|
| logging::LoggingSettings logging_settings;
|
| logging_settings.logging_dest = logging::LOG_TO_SYSTEM_DEBUG_LOG;
|
|
|