diff --git a/webrtc/build/common.gypi b/webrtc/build/common.gypi index dca62eae6..0049d13b9 100644 --- a/webrtc/build/common.gypi +++ b/webrtc/build/common.gypi @@ -139,6 +139,9 @@ #'WEBRTC_SVNREVISION=" -#include +#include #include "webrtc/common_types.h" #include "webrtc/system_wrappers/interface/trace.h" namespace webrtc { +namespace { -static TraceLevel WebRtcSeverity(LoggingSeverity sev) { +TraceLevel WebRtcSeverity(LoggingSeverity sev) { switch (sev) { // TODO(andrew): SENSITIVE doesn't have a corresponding webrtc level. case LS_SENSITIVE: return kTraceInfo; @@ -30,6 +31,17 @@ static TraceLevel WebRtcSeverity(LoggingSeverity sev) { } } +const char* DescribeFile(const char* file) { + const char* end1 = ::strrchr(file, '/'); + const char* end2 = ::strrchr(file, '\\'); + if (!end1 && !end2) + return file; + else + return (end1 > end2) ? end1 + 1 : end2 + 1; +} + +} // namespace + LogMessage::LogMessage(const char* file, int line, LoggingSeverity sev) : severity_(sev) { print_stream_ << "(" << DescribeFile(file) << ":" << line << "): "; @@ -40,13 +52,4 @@ LogMessage::~LogMessage() { WEBRTC_TRACE(WebRtcSeverity(severity_), kTraceUndefined, 0, str.c_str()); } -const char* LogMessage::DescribeFile(const char* file) { - const char* end1 = ::strrchr(file, '/'); - const char* end2 = ::strrchr(file, '\\'); - if (!end1 && !end2) - return file; - else - return (end1 > end2) ? end1 + 1 : end2 + 1; -} - } // namespace webrtc diff --git a/webrtc/system_wrappers/source/logging_no_op.cc b/webrtc/system_wrappers/source/logging_no_op.cc new file mode 100644 index 000000000..be0f799bd --- /dev/null +++ b/webrtc/system_wrappers/source/logging_no_op.cc @@ -0,0 +1,23 @@ +/* + * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. + * + * Use of this source code is governed by a BSD-style license + * that can be found in the LICENSE file in the root of the source + * tree. An additional intellectual property rights grant can be found + * in the file PATENTS. All contributing project authors may + * be found in the AUTHORS file in the root of the source tree. + */ + +#include "webrtc/system_wrappers/interface/logging.h" + +namespace webrtc { + +LogMessage::LogMessage(const char*, int, LoggingSeverity) { + // Avoid an unused-private-field warning. + (void)severity_; +} + +LogMessage::~LogMessage() { +} + +} // namespace webrtc diff --git a/webrtc/system_wrappers/source/logging_unittest.cc b/webrtc/system_wrappers/source/logging_unittest.cc index 6f36aba20..8d8a580f7 100644 --- a/webrtc/system_wrappers/source/logging_unittest.cc +++ b/webrtc/system_wrappers/source/logging_unittest.cc @@ -73,7 +73,7 @@ TEST_F(LoggingTest, LogStream) { std::string msg = "Important message"; expected_log_ << "(logging_unittest.cc:" << __LINE__ + 1 << "): " << msg; LOG(LS_WARNING) << msg; - cv_->SleepCS(*crit_.get()); + cv_->SleepCS(*crit_.get(), 2000); } } @@ -86,7 +86,7 @@ TEST_F(LoggingTest, LogFunctionError) { expected_log_ << "(logging_unittest.cc:" << __LINE__ + 2 << "): Foo failed: bar=" << bar << ", baz=" << baz; LOG_FERR2(LS_ERROR, Foo, bar, baz); - cv_->SleepCS(*crit_.get()); + cv_->SleepCS(*crit_.get(), 2000); } } diff --git a/webrtc/system_wrappers/source/system_wrappers.gyp b/webrtc/system_wrappers/source/system_wrappers.gyp index 0a29d0e55..4ce148bad 100644 --- a/webrtc/system_wrappers/source/system_wrappers.gyp +++ b/webrtc/system_wrappers/source/system_wrappers.gyp @@ -85,6 +85,7 @@ 'file_impl.h', 'list_no_stl.cc', 'logging.cc', + 'logging_no_op.cc', 'map.cc', 'rw_lock.cc', 'rw_lock_generic.cc', @@ -118,10 +119,12 @@ },], ['enable_tracing==1', { 'sources!': [ + 'logging_no_op.cc', 'trace_impl_no_op.cc', ], }, { 'sources!': [ + 'logging.cc', 'trace_impl.cc', 'trace_impl.h', 'trace_posix.cc',