summaryrefslogtreecommitdiff
path: root/cpp/src
diff options
context:
space:
mode:
authorGordon Sim <gsim@apache.org>2011-10-31 09:59:10 +0000
committerGordon Sim <gsim@apache.org>2011-10-31 09:59:10 +0000
commit9534acd25c0fa9fc7a9b9f1ed4c62c855f191a10 (patch)
tree73d3639a1ea572a8b68d9815dba846c8867c3017 /cpp/src
parent01258a10fd9e9d021553a457857114ae18df0beb (diff)
downloadqpid-python-9534acd25c0fa9fc7a9b9f1ed4c62c855f191a10.tar.gz
QPID-3563: Protect from concurrent access to accept tracker state
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1195385 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/src')
-rw-r--r--cpp/src/qpid/client/amqp0_10/IncomingMessages.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/cpp/src/qpid/client/amqp0_10/IncomingMessages.cpp b/cpp/src/qpid/client/amqp0_10/IncomingMessages.cpp
index 3badaf40ba..715376fd8d 100644
--- a/cpp/src/qpid/client/amqp0_10/IncomingMessages.cpp
+++ b/cpp/src/qpid/client/amqp0_10/IncomingMessages.cpp
@@ -276,6 +276,7 @@ void IncomingMessages::retrieve(FrameSetPtr command, qpid::messaging::Message* m
}
const MessageTransferBody* transfer = command->as<MessageTransferBody>();
if (transfer->getAcquireMode() == ACQUIRE_MODE_PRE_ACQUIRED && transfer->getAcceptMode() == ACCEPT_MODE_EXPLICIT) {
+ sys::Mutex::ScopedLock l(lock);
acceptTracker.delivered(transfer->getDestination(), command->getId());
}
session.markCompleted(command->getId(), false, false);