| Index: chrome/test/chromedriver/logging.cc
|
| diff --git a/chrome/test/chromedriver/logging.cc b/chrome/test/chromedriver/logging.cc
|
| index 4a8cfa1ce83435d4ab675f575b3fbf88101d2125..d0bae358ab6ad8bada19b9cf6745b3d262fcc171 100644
|
| --- a/chrome/test/chromedriver/logging.cc
|
| +++ b/chrome/test/chromedriver/logging.cc
|
| @@ -77,8 +77,18 @@ Log::Level GetLevelFromSeverity(int severity) {
|
| }
|
| }
|
|
|
| +WebDriverLog* GetSessionLog() {
|
| + Session* session = GetThreadLocalSession();
|
| + if (!session)
|
| + return NULL;
|
| + return session->driver_log.get();
|
| +}
|
| +
|
| bool InternalIsVLogOn(int vlog_level) {
|
| - return GetLevelFromSeverity(vlog_level * -1) >= g_log_level;
|
| + WebDriverLog* session_log = GetSessionLog();
|
| + Log::Level session_level = session_log ? session_log->min_level() : Log::kOff;
|
| + Log::Level level = g_log_level < session_level ? g_log_level : session_level;
|
| + return GetLevelFromSeverity(vlog_level * -1) >= level;
|
| }
|
|
|
| bool HandleLogMessage(int severity,
|
| @@ -87,37 +97,25 @@ bool HandleLogMessage(int severity,
|
| size_t message_start,
|
| const std::string& str) {
|
| Log::Level level = GetLevelFromSeverity(severity);
|
| - if (level < g_log_level)
|
| - return true;
|
| -
|
| std::string message = str.substr(message_start);
|
| - const char* level_name = "UNKNOWN";
|
| - switch (level) {
|
| - case Log::kDebug:
|
| - level_name = "DEBUG";
|
| - break;
|
| - case Log::kInfo:
|
| - level_name = "INFO";
|
| - break;
|
| - case Log::kWarning:
|
| - level_name = "WARNING";
|
| - break;
|
| - case Log::kError:
|
| - level_name = "ERROR";
|
| - break;
|
| - default:
|
| - break;
|
| +
|
| + if (level >= g_log_level) {
|
| + const char* level_name = LevelToName(level);
|
| + std::string entry = base::StringPrintf(
|
| + "[%.3lf][%s]: %s",
|
| + base::TimeDelta(base::TimeTicks::Now() -
|
| + base::TimeTicks::FromInternalValue(g_start_time))
|
| + .InSecondsF(),
|
| + level_name,
|
| + message.c_str());
|
| + fprintf(stderr, "%s", entry.c_str());
|
| + fflush(stderr);
|
| }
|
| - std::string entry = base::StringPrintf(
|
| - "[%.3lf][%s]: %s",
|
| - base::TimeDelta(base::TimeTicks::Now() -
|
| - base::TimeTicks::FromInternalValue(g_start_time))
|
| - .InSecondsF(),
|
| - level_name,
|
| - message.c_str());
|
| -
|
| - fprintf(stderr, "%s", entry.c_str());
|
| - fflush(stderr);
|
| +
|
| + WebDriverLog* session_log = GetSessionLog();
|
| + if (session_log)
|
| + session_log->AddEntry(level, message);
|
| +
|
| return true;
|
| }
|
|
|
|
|