summaryrefslogtreecommitdiff
path: root/qpid/cpp
diff options
context:
space:
mode:
authorGordon Sim <gsim@apache.org>2008-04-14 21:11:25 +0000
committerGordon Sim <gsim@apache.org>2008-04-14 21:11:25 +0000
commitb8c35ee8da8ad85f679894197d1764c4c127c22c (patch)
tree208915499557210c2fd91d263ea281f60f73827f /qpid/cpp
parent9c66633bd604b742003b0ecef308ece060199e79 (diff)
downloadqpid-python-b8c35ee8da8ad85f679894197d1764c4c127c22c.tar.gz
* Fix interpretation of accept-mode, 0 == EXPLICIT
* Ensure accepts are taken into account in command sequence git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk@647999 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/cpp')
-rw-r--r--qpid/cpp/src/qpid/broker/MessageAdapter.cpp2
-rw-r--r--qpid/cpp/src/qpid/broker/SessionState.cpp1
2 files changed, 2 insertions, 1 deletions
diff --git a/qpid/cpp/src/qpid/broker/MessageAdapter.cpp b/qpid/cpp/src/qpid/broker/MessageAdapter.cpp
index ea2882b474..0e99d923d4 100644
--- a/qpid/cpp/src/qpid/broker/MessageAdapter.cpp
+++ b/qpid/cpp/src/qpid/broker/MessageAdapter.cpp
@@ -60,7 +60,7 @@ namespace broker{
bool TransferAdapter::requiresAccept(const framing::FrameSet& f)
{
const framing::Message010TransferBody* b = f.as<framing::Message010TransferBody>();
- return b && b->getAcceptMode();
+ return b && b->getAcceptMode() == 0/*EXPLICIT == 0*/;
}
std::string PreviewAdapter::getExchange(const framing::FrameSet& f)
diff --git a/qpid/cpp/src/qpid/broker/SessionState.cpp b/qpid/cpp/src/qpid/broker/SessionState.cpp
index d719bbe145..64d62934b9 100644
--- a/qpid/cpp/src/qpid/broker/SessionState.cpp
+++ b/qpid/cpp/src/qpid/broker/SessionState.cpp
@@ -230,6 +230,7 @@ void SessionState::enqueued(boost::intrusive_ptr<Message> msg)
{
completed.add(msg->getCommandId());
if (msg->requiresAccept()) {
+ nextOut++;//accept is a command, so the counter must be incremented
getProxy().getMessage010().accept(SequenceSet(msg->getCommandId()));
}
}