Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(375)

Unified Diff: base/logging_win.cc

Issue 2497833002: support multiple log message handlers in base/logging.h (Closed)
Patch Set: Created 4 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « base/logging_win.h ('k') | base/test/mock_log.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: base/logging_win.cc
diff --git a/base/logging_win.cc b/base/logging_win.cc
index 319ae8a9d38186aa7ffc6466f574c2a795a1832c..6a86e51c40bf2a664d6267aa2a3a3266b6210b52 100644
--- a/base/logging_win.cc
+++ b/base/logging_win.cc
@@ -23,8 +23,9 @@ LogEventProvider* LogEventProvider::GetInstance() {
}
bool LogEventProvider::LogMessage(logging::LogSeverity severity,
- const char* file, int line, size_t message_start,
- const std::string& message) {
+ const std::string& file,
+ int line,
+ const std::string& message) {
EtwEventLevel level = TRACE_LEVEL_NONE;
// Convert the log severity to the most appropriate ETW trace level.
@@ -56,8 +57,7 @@ bool LogEventProvider::LogMessage(logging::LogSeverity severity,
// And now log the event.
if (provider->enable_flags() & ENABLE_LOG_MESSAGE_ONLY) {
EtwMofEvent<1> event(kLogEventId, LOG_MESSAGE, level);
- event.SetField(0, message.length() + 1 - message_start,
- message.c_str() + message_start);
+ event.SetField(0, message.length() + 1, message.c_str());
provider->Log(event.get());
} else {
@@ -71,8 +71,6 @@ bool LogEventProvider::LogMessage(logging::LogSeverity severity,
depth = CaptureStackBackTrace(2, kMaxBacktraceDepth, backtrace, NULL);
EtwMofEvent<5> event(kLogEventId, LOG_MESSAGE_FULL, level);
- if (file == NULL)
- file = "";
// Add the stack trace.
event.SetField(0, sizeof(depth), &depth);
@@ -80,10 +78,9 @@ bool LogEventProvider::LogMessage(logging::LogSeverity severity,
// The line.
event.SetField(2, sizeof(line), &line);
// The file.
- event.SetField(3, strlen(file) + 1, file);
+ event.SetField(3, file.length() + 1, file.c_str());
// And finally the message.
- event.SetField(4, message.length() + 1 - message_start,
- message.c_str() + message_start);
+ event.SetField(4, message.length() + 1, message.c_str());
provider->Log(event.get());
}
@@ -102,7 +99,7 @@ void LogEventProvider::Initialize(const GUID& provider_name) {
provider->Register();
// Register our message handler with logging.
- SetLogMessageHandler(LogMessage);
+ AddLogMessageHandler(LogMessage);
}
void LogEventProvider::Uninitialize() {
« no previous file with comments | « base/logging_win.h ('k') | base/test/mock_log.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698