summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cpp/include/qpid/log/Logger.h1
-rw-r--r--cpp/src/qpid/log/Logger.cpp6
2 files changed, 3 insertions, 4 deletions
diff --git a/cpp/include/qpid/log/Logger.h b/cpp/include/qpid/log/Logger.h
index 80622365b1..d7da1f077a 100644
--- a/cpp/include/qpid/log/Logger.h
+++ b/cpp/include/qpid/log/Logger.h
@@ -98,7 +98,6 @@ class Logger : private boost::noncopyable {
typedef std::set<Statement*> Statements;
sys::Mutex lock;
- sys::RWlock outputsLock;
inline void enable_unlocked(Statement* s);
Statements statements;
diff --git a/cpp/src/qpid/log/Logger.cpp b/cpp/src/qpid/log/Logger.cpp
index 65b4568e74..939e2502cc 100644
--- a/cpp/src/qpid/log/Logger.cpp
+++ b/cpp/src/qpid/log/Logger.cpp
@@ -90,21 +90,21 @@ void Logger::log(const Statement& s, const std::string& msg) {
os << msg << endl;
std::string formatted=os.str();
{
- sys::RWlock::ScopedRlock l(outputsLock);
+ ScopedLock l(lock);
std::for_each(outputs.begin(), outputs.end(),
boost::bind(&Output::log, _1, s, formatted));
}
}
void Logger::output(std::auto_ptr<Output> out) {
- sys::RWlock::ScopedWlock l(outputsLock);
+ ScopedLock l(lock);
outputs.push_back(out.release());
}
void Logger::clear() {
select(Selector()); // locked
format(0); // locked
- sys::RWlock::ScopedWlock l(outputsLock);
+ ScopedLock l(lock);
outputs.clear();
}