summaryrefslogtreecommitdiff
path: root/cpp/src/qpid/broker/IncompleteMessageList.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/src/qpid/broker/IncompleteMessageList.cpp')
-rw-r--r--cpp/src/qpid/broker/IncompleteMessageList.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/cpp/src/qpid/broker/IncompleteMessageList.cpp b/cpp/src/qpid/broker/IncompleteMessageList.cpp
index 02265ab85c..a061e872d0 100644
--- a/cpp/src/qpid/broker/IncompleteMessageList.cpp
+++ b/cpp/src/qpid/broker/IncompleteMessageList.cpp
@@ -30,7 +30,8 @@ IncompleteMessageList::IncompleteMessageList() :
IncompleteMessageList::~IncompleteMessageList()
{
- sys::Mutex::ScopedLock l(lock);
+ // No lock here. We are relying on Messsag::reset*CompleteCallback
+ // to ensure no callbacks are in progress before they return.
for (Messages::iterator i = incomplete.begin(); i != incomplete.end(); ++i) {
(*i)->resetEnqueueCompleteCallback();
(*i)->resetDequeueCompleteCallback();